Local SEO is the work of making a business show up in Google for people in a specific city or neighbourhood when they search for "dentist Lviv", "washing machine repair near me" or simply "coffee shop". The rules here differ from regular SEO: half the result comes from the Google Business Profile and reviews rather than from website copy, and rankings can realistically move within 30-60 days instead of six months. Below we break down what the local results consist of, which factors drive them, give a one-month plan in a table and list the mistakes that keep a business with a perfectly decent website invisible in its own city.

When Google decides a query has local intent, it shows three different blocks instead of ten plain links, and a business can appear in each of them separately.
Google detects local intent in two ways: from the words in the query (city, district, "nearby", "near me") and from the user's location, even if no city is mentioned. That is why "tyre service" in Dnipro and in Kharkiv returns completely different results, and why positions must be tracked against a specific location rather than "for the whole country".
Google's own help pages name three groups of local ranking signals: relevance, distance and prominence. Let us translate those into things you can actually work on.
This is the foundation. A profile filled in 100% (primary and secondary categories, description, services with prices, hours, photos, attributes such as "parking available") ranks noticeably better than a half-empty one. The single most important field, and the one everyone fills in carelessly, is the primary category: "Dental clinic" and "Dentist" produce different results. At Query we start any local project by checking the categories of the competitors sitting in the top 3 of the local pack.
Quantity, recency, average rating and whether the business replies. A profile with 40 reviews from the last six months will beat one with 200 reviews that are three years old. Replying to every review, negative ones included, is an activity signal Google sees. Google also reads the words in reviews ("changed the oil quickly") and uses them for relevance.
Name, Address, Phone: all three must be written identically everywhere: in the Google profile, on the website, in directories, on social media. "10 Shevchenko St, office 5" in one place and "Shevchenko 10/5" in another is the same thing to a person, but to an algorithm it is a reason to doubt this is the same business. On the website the address should be text, ideally marked up with schema.org LocalBusiness, not an image in the footer.
For organic results you need a page for every "service + city" pair if you operate in several cities, or at least the city name in the title, heading and body of your service pages if there is only one. The copy must genuinely differ: the branch address, the team, local specifics, photos of that particular location. It is the same approach as in SEO for service websites, only tied to geography.
City portals, business directories, partner sites, local media, event sponsorship. For local results, one link from a city news site weighs more than ten from generic directories. The mandatory minimum: the industry and city directories where your competitors are already listed.

It is critical for anyone whose customers arrive on foot or call them out to their home: clinics and dental practices, beauty salons, car services, cafes and restaurants, shops with physical locations, tradespeople who make house calls, lawyers and notaries, gyms, veterinary clinics. For an online store shipping nationwide or for IT services the local block brings almost no traffic; regular organic results decide everything there. The in-between case is a service company with regional branches, where local and general SEO run in parallel. If you are not sure, type your three main queries into Google on a phone: if a local pack appears at the top, local SEO is critical for you.
Designed for one business with one to three locations. For a chain with dozens of addresses every step multiplies, but the logic stays the same.
| Week | Focus | Outcome |
|---|---|---|
| 1 | Google Business profile and NAP | Profile 100% complete, one NAP |
| 2 | Site: contacts, city, markup | Google sees the link to the city |
| 3 | Reviews and services with prices | 10-20 fresh reviews, 100% replied |
| 4 | Directories, mentions, tracking | Local link base, a baseline to measure |
The first movement in the local pack usually shows 3-6 weeks after profile verification; organic rankings for "service + city" queries catch up more slowly, in 2-4 months depending on competition. At that point it is part of general Google SEO, and the same timelines apply.
Three sources, and each shows something different.

One page for all cities. "We work in Kyiv, Lviv, Odesa and Dnipro" as a single line in the footer gives Google no reason to show you in Lviv. Every city with a real presence needs its own page with unique content. At the same time, do not churn out dozens of template pages for cities where you have no presence: Google recognizes such duplicates with a swapped city name and does not rank them.
Fake reviews. Twenty five-star reviews in one day from accounts with no history, all using the same phrases: Google filters them, and in the worst case the profile gets restricted. Buying reviews is against the rules and the risk of losing the profile is real. There is one approach that works: ask every satisfied customer, systematically, with a QR code or a link, and reply to everything.
Different addresses and phone numbers. You moved or changed the number, and half the directories still carry the old data. Or the profile has one number, the website another, Facebook a third. The algorithm sees several "different" businesses and trusts none of them. Once every six months, go through every platform where you are mentioned.
Keywords in the profile name. "Denta Plus Dentistry Kyiv cheap implants" instead of the real name. This breaks the rules, the profile can be suspended, and competitors know how to report it. The name should match the sign on the door; keywords belong in categories and the description.
We covered filling in and running the profile in more detail in a separate article on Google Business Profile, and Google's official guidance on local ranking is collected in the Business Profile help center.