Contact Us
Semalt series

Local SEO for Real: How Semalt Shows What Happens Street by Street

Why average position lies in local search, how to track results at neighbourhood level, and what to do when the business has three addresses across one metro area.

Updated: 2026-08-06 9 min read 2.079 words
View over the rooftops of Porto and the Ribeira at dusk

Key takeaways

  • Local results change every few hundred metres. A national or even city-level average tells you almost nothing about what a customer two streets away sees.
  • Track at neighbourhood level for the areas you actually serve, and accept that this means more tracked terms and a more honest picture.
  • Multi-location businesses need one real page per location. A single "our branches" page asks the search engine to guess, and it guesses badly.
  • Review recency and wording move local results faster than almost anything you can change on the website itself.

A client in Cedofeita once told us their rankings had collapsed. We checked: position three, stable for months. They were checking from home in Matosinhos, ten kilometres away, where they did not appear at all. Both observations were correct. That is the whole problem with local search in one anecdote.

Local results are calculated from where the person is standing, and they change over distances small enough to walk. This article is about handling that properly with the Semalt platform: how to configure tracking so the numbers describe reality, what to do when a business serves several parishes, and which signals actually move a local ranking.

Why "average position" is meaningless locally

~1 kmDistance over which a local result set can change substantially
3 factorsRelevance, distance and prominence — you control two of them
1 pagePer location, always — never one page listing every branch

Working assumptions used throughout this article; verify the distance effect on your own tracked set.

A national tracker measuring "clínica dentária" returns a number that is an average of thousands of different result sets. For a business that serves people within a fifteen-minute walk, that average is not a summary of performance — it is noise dressed as a metric. Worse, it moves constantly for reasons that have nothing to do with the business, which trains everyone to distrust the reporting.

Configure the tracking at the level the business actually operates. If a practice serves Bonfim and Campanhã, track from those areas specifically. The numbers immediately become smaller, more stable and far more useful: when a position moves, something actually changed.

The setup that fixes most local reporting. One tracked group per service area, each pinned to that area's coordinates, plus one group of brand terms tracked city-wide. It takes twenty minutes and it converts a chart nobody trusts into three charts that each answer a question the owner has.

What you can and cannot change

Local ranking rests on three things, and being clear about which are movable saves a lot of wasted effort.

Distance is fixed. You cannot rank for a query issued from an area you are far from, and no amount of optimisation changes physics. What you can do is stop measuring yourself against areas you were never going to serve, and stop paying for content aimed at them.

See also: The Blog That Stopped Paying.

Relevance is largely under your control and usually underdeveloped. It comes from the business profile being complete and specific, from the site having a genuine page for each service and each location, and from the wording matching how customers actually describe what they need.

Prominence is where most of the available upside sits: reviews, local citations, mentions in local media and directories, and general brand presence in the area. This is slow work, but it compounds, and it is the part competitors find hardest to copy quickly.

Multi-location: the mistake that costs the most

A business with three addresses across the metropolitan area — say Boavista, Gaia and Maia — very often has one page listing all three. It is tidy for the visitor and terrible for search, because every location query has to be resolved by a page that is equally about three different places.

Each location needs its own page, and "its own page" means more than a different address in the same template:

  1. Its own address, hours and contact

    Marked up so the machine-readable data matches exactly what the visitor sees on the page, and exactly what the business profile says.

  2. The people who actually work there

    Named staff with real photographs. This is the single clearest signal that the page describes a real place rather than a template variation.

  3. Content specific to that area

    How to get there, where to park, which metro or bus stop, what is nearby. Not filler — it is the information a first-time visitor genuinely needs, and it is also the content no competitor's template contains.

  4. Internal links from the relevant service pages

    The service page should link to the locations offering it, and each location should link to the services it provides. That structure tells the search engine which combinations exist.

Duplicate location pages are worse than none. The common shortcut is to copy one location page and swap the place name. Three near-identical pages compete with each other and none of them ranks well. If you cannot write genuinely different content for each address, the location does not need a page yet — it needs a reason to have one.

Service-area businesses: the harder case

Plumbers, electricians, mobile technicians, cleaning companies and anyone else who travels to the customer have a structurally harder problem than a shop with a door. Their competitors have a fixed address in the area they want to serve; they do not. The temptation is to invent one, and the versions of that shortcut all fail in the same way.

Listing a virtual office, a friend's address or a co-working space that the business does not actually operate from is a verification risk, and it also produces the outcome nobody wants: appearing in an area you cannot serve quickly, generating calls you have to decline. Declining calls is worse for the business than not receiving them, because it costs time and produces a bad impression.

There is a full walkthrough in Redesigning Without Losing Google.

The approach that works is duller and holds up. Define the service area honestly in the business profile, then build genuine pages for the areas where you actually want work — with content that proves you operate there. Proof means specifics: jobs completed in that area, typical response time to it, the parts of it you reach fastest, local references. A page saying "we serve Vila Nova de Gaia" convinces nobody. A page describing three jobs done there last month, with photographs and the time it took to arrive, is a different document entirely.

For tracking, this changes what a good result looks like. A service-area business will rarely dominate the map block outside its base, so classic results and long-tail service queries carry more of the load. Set expectations accordingly at the start of the engagement — an owner who expects map dominance across the whole metropolitan area will read a genuinely good result as a failure.

One practical note on measurement: track the areas separately even when the site treats them as one service. Aggregated, a strong home area conceals four weak ones, and the strategy that follows from "we are doing fine" is very different from the one that follows from "we are doing fine in Bonfim and invisible everywhere else".

We cover this in detail in Four Hours a Week.

Reviews: the fastest-moving lever you control

For local results, reviews move faster than almost anything you can change on the site. Three properties matter, and only the first is the one businesses focus on.

What actually helps

  • Recency — a steady trickle beats an old cluster
  • Text that names the service and the neighbourhood
  • Owner responses, including on the negative ones
  • Photographs from customers, not just from the business

What does not help, or actively hurts

  • Volume with no recent activity
  • Batches of reviews arriving in a single week
  • Identical five-star text with no detail
  • Silence on complaints, which readers weigh heavily

The practical instruction we give clients is simple: ask a better question. "How was your visit?" produces "great, thank you". "What would you tell a friend who was deciding?" produces a paragraph that mentions the treatment, the location and the parking — which is exactly the corroboration that helps the profile appear for those queries.

A review that says "quick appointment, easy to reach from Trindade, explained everything clearly" does more for local visibility than a month of on-page tweaking.Why review wording is an SEO deliverable, not a customer-service afterthought

What to track, and how to report it

Local reporting fails when it presents classic ranking positions as if they were the whole story. They are one part of a picture that also includes map results and profile interactions, and the client cares about the last one most.

MetricWhat it tells youHow often to look
Position by service areaWhether you are visible where you actually operateWeekly, briefly
Map pack presenceWhether you appear in the block most local searchers useWeekly
Profile views and actionsCalls, direction requests, site clicks — the real outcomeMonthly
Review count and recencyThe prominence signal you can influence directlyMonthly
Competitor movement in the areaWhether a change is yours or the market'sMonthly

Reported together, these tell a story an owner recognises. Reported as a single position number, they tell a story nobody believes, because it contradicts what the owner sees when they search from their own phone.

Local content that is not filler

Most "local content" is a paragraph with the place name inserted several times, and it convinces nobody. The version that works answers questions that only apply to that place.

For a service business in Porto, the pages that consistently earn traffic are the practical ones: how the process works for someone coming from outside the city, what documentation is needed, what the typical wait is, how parking works near the premises, whether an appointment can begin remotely. None of this is glamorous, and all of it is searched.

The test is straightforward. If you could swap "Porto" for "Braga" and the page would still make sense, it is not local content — it is generic content with a place name in it, and it will rank accordingly.

Where to start this week

Three things, in this order. First, fix the consistency of your business data — name, address, phone, hours, services — across your own site, your business profile and the main directories. It is unglamorous and it is almost always at least partly wrong.

Second, reconfigure tracking to the areas you actually serve, so that the numbers stop lying to you. Third, build the review habit: ask the better question, respond to everything, and keep the flow steady rather than seasonal.

Those three cost almost nothing and address the parts of local search that are genuinely within your control. If you want to see the difference proper area-level tracking makes, open the dashboard, set up one group per service area, and compare the picture with whatever your current report says.

Frequently asked questions

Why do I rank differently from my own office than from home?

Because local results are calculated from the searcher's position, and they can change substantially over a kilometre or less. Both readings are real; neither is "the" ranking. This is exactly why tracking should be pinned to the areas the business serves rather than measured nationally, and why a single average position is a misleading way to report local performance.

We have three branches. Do we need three websites?

No — one site with a genuine page per location. Separate sites split your authority three ways and triple the maintenance for no benefit. What each location does need is its own address, hours, staff, structured data and content specific to that area, rather than a duplicated template with the place name swapped.

How many reviews do we need?

Fewer than most people assume, but arriving steadily. A profile with sixty reviews including several from the last month generally reads as more active than one with two hundred that stopped a year ago. Recency, owner responses and text that mentions the specific service and area matter more than the raw count.

Can we rank in an area where we have no address?

In the map results, essentially no — distance is a real constraint and it is not negotiable. In the classic results you can rank for "service + area" queries with a well-made page about serving that area, and for service businesses that travel to the client this is often worthwhile. Just do not expect it to behave like a local listing, because it will not.

Try it

Open your Semalt dashboard

Audits, rank tracking, competitor data and reporting in one place. Sign in and you will be looking at real numbers for your own domain within minutes.

Sign in to Semalt

Or browse the service overview at semalt.com.

Free download: The Porto SEO checklist for local businesses (2026)

40 practical checkpoints that have moved real sites up on Google — from technical to Porto neighborhood SEO. PDF, no long sign-up.

  • 7 technical foundation checks (Core Web Vitals, HTTPS, sitemap)
  • 8 on-page checks for every commercial page
  • 7 Porto local SEO steps (GBP, NAP, neighborhoods)
  • 6 conversion tactics that triple form submissions

We email you the PDF. No spam. · Or download direct