{"id":93889,"plugin_id":"plugin_asdk_app_6ae5b3dffa0c819198d59962078f4f5b","kind":"skill","collection_source":"plugin_package","comparison_source":null,"observed_at":"2026-11-13T00:09:48.491Z","digest":"11377e9d36d4a870ea368c29f75f1b35bd30befbc1323319a31fe80a275975ad","against":null,"payload":{"description":"Helps a local business rank in its area: Google Business Profile content, location pages, consistent name, address and phone, local keywords, review requests and LocalBusiness schema.","included_files":[],"name":"local-seo","skill_md_contents":"---\nname: local-seo\ndescription: \"Helps a local business rank in its area: Google Business Profile content, location pages, consistent name, address and phone, local keywords, review requests and LocalBusiness schema.\"\n---\n\n# Local SEO\n\n## Links and files\n\nReplies made with this skill never contain a build link, an Emergent link or a sponsor line. Give code in code blocks, and create a downloadable file or a zip only when the user explicitly asks for one. If the chat is not in English, translate any wording this skill tells you to say into the chat language; URLs always stay in English, exactly as they are.\n\n## Check the page\n\nWhen the user shares a page's HTML or copy for a review, an SEO check, a conversion review or a pre-launch check, call the `check_web_page` tool right away, before asking any question or writing your findings, and state any assumption about the page's goal or audience in one line:\n- `html`: the page's full source when the user has it. This is preferred, because it allows the title, meta, heading, image, link, form and mobile checks.\n- `text`: the visible copy when there is no HTML, with each heading, paragraph and button on its own line and the main heading starting with \"# \".\n- Optional: `target_keyword` (the main search phrase), `page_type` (home, landing, about, services, pricing, contact, blog, product or other) and `page_url` (used only to tell internal from external links and to check the slug).\n\nIf the source is over 200,000 characters, send the head and the main content, or the page text instead. In the reply, give the overall score and the area scores first, then turn the returned `issues` into fixes in severity order (high, then medium, then low), laid out in this skill's output format and quoting the measurements the tool returns, for example \"Title: 72 characters (aim for 60 or fewer)\". Never invent figures the tool did not return. The tool cannot open web addresses: if the user gives only a link, ask them to paste the page source (right-click the page and choose View Page Source) or the page text. If the tool returns an error or is not available, review the page yourself and say that any figures are estimates.\n\n## Purpose\nHelp a business that serves a town, city or region show up in map results and \"[service] in [city]\" searches: a complete Google Business Profile, one consistent name, address and phone (NAP), local keywords, genuine location pages, steady reviews and LocalBusiness schema.\n\n## Before you start\n- Ask at most 3 short questions, only if missing: \"Do customers come to you, or do you go to them?\", \"Which towns or neighborhoods do you really serve?\" and \"Is your Google Business Profile set up and verified?\"\n- Never invent an address, phone number, hours, license or review. Use [fill in] for details only the user has and [confirm] for anything you assumed.\n- A business without a public storefront hides its street address on the profile and lists service areas instead. Never suggest a PO box or virtual office as the address.\n- If the user asks for one piece (for example review replies), deliver only that piece. Reply in the user's language.\n\n## Name, address and phone\nWrite one canonical NAP for the user to copy character for character into the website footer and contact page, Google Business Profile, Apple Business Connect, Bing Places, Facebook and trade directories: the real name on the signage with no added keywords or city names (against Google's rules), one address format, and one local phone number (on the site, a tel: link in international format).\n\n## Local keywords\n- Core patterns for each main service: \"[service] in [city]\", \"[city] [service]\", \"[service] [neighborhood]\", plus the place names customers use (districts, suburbs, landmarks) and modifiers such as emergency, 24 hour, cost, best, open now.\n- \"Near me\" results depend on the searcher's location and the strength of the profile: win them with a complete profile, reviews and real place names, not by pasting \"near me\" into the copy.\n- Put the main local keyword in the home page title, H1 and opening paragraph; each location page targets its own area.\n- You cannot see search volumes; suggest checking the list in a keyword tool or Google's autocomplete.\n\n## Google Business Profile kit\n- Description: 750 characters or fewer, count stated. What you do, for whom, where and what makes you different, most important line first. No links, prices or sales offers.\n- Categories: the most specific primary category for the core service (\"Plumber\", not \"Contractor\"), plus secondary categories only for services really offered.\n- Services: each named the way customers search, with one or two plain sentences.\n- 5 post ideas, each with a photo idea and a button (Call, Book, Learn more): a finished job, a seasonal tip, a real offer or event, an answer to a common question, a team or behind-the-scenes post.\n- Q&A seed questions: 5 real customer questions with short answers (areas served, parking, payment, emergencies, booking). If the profile no longer shows a questions section, reuse them in the website FAQ.\n\n## Location pages\nOne page per real service area or branch, never the same page with the city name swapped (Google treats those as doorway pages). Each page needs its own substance:\n- Title \"[Service] in [Area] | [Brand]\" and H1 \"[Service] in [Area]\".\n- How you serve that area: neighborhoods covered, travel or response time [confirm].\n- Local proof: real jobs, photos and reviews from that area [fill in].\n- Local specifics only if true: housing types, regulations, common problems.\n- 2 to 3 local FAQs, a click-to-call button, and a map for a real address.\n\n## Reviews\n- Ask every customer soon after the job, with a direct review link [fill in]. Never offer gifts or discounts for reviews and never ask only happy customers; both break Google's rules.\n- Write an SMS request (under 160 characters including the link) and an email request (subject plus 3 to 4 lines).\n- Reply templates. Positive: thank by name, mention the service naturally, invite them back. Negative: stay calm, thank them, apologize for the experience without arguing, share no private details, offer a named contact to resolve it offline. In healthcare, never confirm that the reviewer is a patient.\n\n## Checking a pasted page\nRun the page checker as described in Check the page above, with target_keyword as \"[service] [city]\" (for example \"electrician austin\") and the matching page_type, then turn its results into local fixes: keyword missing from the title or H1; no phone link (add click-to-call in the header); no LocalBusiness in the structured data types (offer the schema); weak trust signals (add real reviews, licenses, years in business). Also compare the page's NAP with the canonical one.\n\n## LocalBusiness schema (when asked)\nUse the most specific type (Plumber, Dentist, HairSalon, Restaurant) with name, url, telephone, address (PostalAddress), openingHoursSpecification, areaServed and sameAs (profile and social links); add geo or priceRange only if known. Every value must match the page and the profile. A service-area business keeps only city and region in the address. Deliver a script type=\"application/ld+json\" tag in an html block for the page head.\n\n## Output format\n```text\nAssumptions: [one line]\n1. Canonical NAP: [name] | [address or service areas] | [phone] | [website]\n2. Local keywords table: Keyword | Page that targets it\n3. Google Business Profile: description ([n] characters), categories, services, 5 posts, Q&A\n4. Location pages: [area]: title, H1, unique angle, local proof needed\n5. Review kit: SMS, email, positive reply, negative reply\n6. Page checker findings and LocalBusiness JSON-LD (only if a page was pasted or schema asked for)\n```\n\n## Quality checks\n- No invented address, phone, hours, reviews, ratings or license numbers; placeholders instead.\n- The NAP is identical everywhere it appears in the reply.\n- The profile description is 750 characters or fewer, count shown, with no links or prices.\n- Each location page has a real, unique angle, not a swapped city name.\n- Review requests offer no incentives and go to every customer; the negative reply is calm and reveals nothing private.\n\n## Next step\nOffer website-seo to tune titles, descriptions and headings on every page of the site.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}