Local SEO has a reputation for being a list of tricks. It is not. It is a list of things that make a search engine confident about where a business is and what it does — and most small business sites fail at the boring parts before they ever get to the interesting ones.
Here is what we check on every local website we build, in roughly the order of impact.
The three signals that carry the weight
1. Google Business Profile
For a local business, the profile matters more than the website in most categories. It is what appears in the map pack, and map pack results take a disproportionate share of clicks.
The basics that must be right:
- Primary category — the one that describes what you actually do, chosen deliberately rather than accepted.
- Secondary categories — every legitimate one you qualify for.
- Name — your real business name. No keyword stuffing, no service list. This is the single most common reason profiles get suspended.
- Hours, including exceptions — wrong hours generate one-star reviews faster than anything else.
- Services listed — with real descriptions, not just titles.
- Photos, updated regularly — not just at setup. Businesses with regularly refreshed photos get measurably more engagement.
2. NAP consistency
Name, address, phone number. Identical, everywhere, in the same format.
Not "KC Web Design Pros" on one site and "Kansas City Web Design Pros" on another. Not "(913) 448-1315" in one place and "913-448-1315" in another. Not "12232 S Blackfoot Dr" in one place and "12232 South Blackfoot Drive" in another.
The formats should match. This sounds trivial and it is the most common technical error we find on local sites, and it is genuinely holding rankings back.
Where it needs to be consistent:
- Your website, on every page
- Your Google Business Profile
- Apple Business Connect
- Bing Places
- Yelp, Facebook, Instagram, LinkedIn
- Local directories and industry directories
- Your invoices and letterhead — yes, really
3. Local landing pages that are genuinely different
One page per service, per location, with content that is actually specific to that combination.
The trap: generating fifty pages that differ only by a swapped location name. Google has been catching this for years and it now actively hurts. If you have three services in two cities, six pages is right. If you have fifty near-identical pages, you have a problem.
A local page should contain something only a local business would know: the neighbourhoods you serve, local building codes you deal with, the specific local competition, weather and seasonality, how long a job takes in that area, the local regulatory context.
The website side
Site speed on mobile. Local searches happen on phones, in cars, on poor connections. A slow site loses both the ranking and the click.
Click-to-call. On every page, a real tel: link. Not an image of a phone number. This is the entire conversion path for a lot of local searches, and it is broken astonishingly often.
A visible address and phone number. On the footer of every page, and in the contact page. Crawlers cross-check that against the Google profile. Discrepancies here are a real problem.
LocalBusiness schema. ProfessionalService or LocalBusiness JSON-LD with your name, address, phone, hours, geo coordinates and service area. This is machine-readable confirmation of what you already told humans.
Consistent reviews. A steady flow of genuine reviews, with a system for asking. Velocity matters. Ten reviews in one week and none for six months reads differently to a search engine than a steady trickle — and to a customer, too.
Reviews with substance. Specific, mentioning the service and the area. This is the cheapest, most reliably effective local SEO work available, and it is the one most businesses neglect because it requires a person to ask.
What stopped working
Keyword-stuffing the business name. "Kansas City Plumbing | Plumber in Kansas City | Best Plumber" as the business name. It looks desperate, it violates the profile guidelines, and it gets profiles suspended.
Buying directory listings in bulk. Hundreds of low-quality directories with no users. Modern search engines discount this heavily, and some of it is actively harmful.
"SEO reports" that sell you backlinks to unrelated directories. Same problem, more expensive.
Chasing keyword volume for the wrong thing. A term with 5,000 searches a month that nobody converts is worth less than a term with 200 searches a month where every searcher is ready to buy. Local intent is what matters, not volume.
The AI assistant layer
This is new enough that it is still changing, but the pattern is already visible.
Ask an AI assistant "who is the best [service] in [city]" and you will get a shortlist. Where does that list come from? Increasingly from structured data, from clear service descriptions, and from pages that state plainly what the business is, where it operates, and what it charges.
The businesses that surface are the ones that are unambiguous. Not the ones with the best copy — the ones a machine can read without ambiguity:
- One page per service, clearly labelled
- Service area stated explicitly, not inferred from a contact form
- Prices or price ranges visible
- Real reviews with service and location mentioned
- Structured data that matches what the page says
A realistic order of operations
- Claim and complete the Google Business Profile. Then keep it updated. This is where most local traffic starts.
- Fix NAP everywhere. One format, everywhere, including old directories.
- Make sure the website is fast and mobile-legible. Non-negotiable.
- Add click-to-call and a real address on every page.
- Build one genuinely local page per service per city. Real content, not templated swaps.
- Add LocalBusiness schema that matches the visible content exactly.
- Build a review request process and use it every week.
- Check that AI assistants describe you correctly. Ask them. If the answer is wrong or vague, that is a content problem you can fix.
What "done" looks like
You should be able to answer "where is this business and what do they do?" from the website alone, in under a minute, without guessing. If you cannot, no amount of directory work will fix it.
If you want the design side of a local site — the part that turns a map-pack impression into an enquiry — our web design service covers the build, the on-page SEO setup and the handover. And if you are in the Kansas City area and want a studio closer to home for the hands-on part, Kansas City Web Design Pros is worth a look — we have written up what they do well and where they fit.