G SERP Counter
Free Chrome extension

Google restarts counting. You shouldn't have to.

On page 3 of the results, Google shows you 1 through 10. Those are really positions 21 through 30. This extension numbers every result by its true rank and marks your domain in green wherever it turns up.

On the Chrome Web Store. Free and open source, no account, no tracking, no data leaves your browser.

Google, page 3
/search?q=...&start=20
1
2
3
4
5
With SERP Counter
true rank 21-30
21
22
23
24
25
What it does

Five surfaces, five separate counts

Paid, local and organic each count on their own scale, so an ad block at the top of the page never shifts your organic numbers.

24 Organic
True rank
Continues across pages. Page 4 numbers 31 to 40, not 1 to 10.
Ad 2 Google Ads
Own scale
Top and bottom ad blocks counted separately, matched on your domain.
Map 3 Local pack
Own scale
Matched on business name, or on the domain behind the website link.
LSA 1 Local Services Ads
Own scale
The Google Guaranteed block above everything else, matched on business name.
7 Google Maps
Feed position
Numbers the results feed on Maps itself, matched on business name.
Location

Search from the city your client is in

Your client is in Ottawa. You are in Toronto. What you see is not what they rank for. Pick a city and every search runs as if you were standing there.

Page 2 is still Ottawa
The hard part
The Next link at the bottom of the results carries no location on it, which is why most tools hand you page one from one city and page two from your own connection. Every link on the page gets the location put back on before you click it, and any page that still arrives without it is reloaded with it.
It says when it did not work
Honest
A location is a request, not a setting, and it is sometimes ignored without a word. When that happens the panel tells you, rather than letting a national ranking read as a local one.
Keywords on tap
One click each
Keep your keywords in the extension, grouped by industry. The panel gets a second tab: pick the industry once and every keyword under it is a button that runs that search from your chosen city, in the tab you are already in.
One list, whole team
Shared
Domains, cities and keywords can each come from a text file on your own server, with a password if it needs one. Update the file once and every machine picks it up.
Domain list

Load every domain once

Paste your whole roster into the popup, one domain per line. Every search then tells you which of them showed up, with no switching between profiles.

domain | Business Name
walmart.com | Walmart
starbucks.com | Starbucks
timhortons.com | Tim Hortons

# The business name is OPTIONAL.
# A domain on its own matches organic results and Ads:
yelp.com

# A name on its own matches the local pack, LSA and Maps:
Home Depot

# Lines starting with # are ignored

Paste from anywhere

Pipe, comma or tab all work, so a copy straight out of a spreadsheet needs no cleaning up. Padding spaces are ignored and the two columns can be in either order.

Two fields, two jobs

The domain matches organic results and Ads, subdomains included. The name matches the local pack, Local Services Ads and Maps, where Google prints a business name instead of a URL.

Every match, all its positions

Each domain that appears gets a row listing all of its positions at once, best first. Entries that did not appear are left out, so the hits are never buried.

summary panel
4 OF 60 DOMAINS ON THIS PAGE
walmart.com
Walmart
12Map 1
timhortons.com
Tim Hortons
14
starbucks.com
Starbucks
16Ad 2
yelp.com
Map 3
2 MENTIONS ON OTHER SITES
linkedin.com
7
zoominfo.com
11
Your result, or a mention of you? Search your own company name and page one fills with LinkedIn, Indeed, ZoomInfo and a dozen directories, all carrying the name and none of them your site. Green means the domain matched, so the result is yours. Amber with a dashed outline means only the business name matched, on somebody else's domain. Mentions get their own block in the panel, keyed by the site doing the mentioning, and a tickbox in the popup turns them off. In the local pack and Maps a name match is your own listing, so it stays green.
One switch turns it off. The popup opens with a switch at the top. Off means the page is left exactly as Google served it: no badges, no outlines, no panel and nothing logged. For screen shares, or anyone sitting next to you.
A panel in the corner sums it up and copies to your clipboard as one line: "windows installer" -> example.com: organic 24, ad 2, local 2. That goes straight into an email, a report or a ticket.
Or copy the result itself, as a picture. Hover any highlighted result and a camera button appears; right-click works too. You get a cropped image of that one result with a caption line underneath carrying the search term, the position, the city and the date, straight onto your clipboard and into the next email. It is made in your browser and uploaded nowhere.
Page 4 is one click away. A row of page circles sits on the panel, so hunting a ranking that is not on page 1 does not mean scrolling to the bottom of every page. They stay put whether the search matched anything or not, and the city you set rides along to the page you land on.
Install

Two clicks from the Chrome Web Store

It is a normal store install. Nothing to download, nothing to unzip, no developer mode. Chrome keeps it up to date on its own from here on.

  1. Add it to Chrome

    Open the Chrome Web Store listing and click Add to Chrome, then Add extension when Chrome asks. It asks to run on Google search pages, plus storage for your tracked domains and the clipboard for the copy button. Nothing else, and nothing outside Google.

    Add to Chrome
  2. Pin it to the toolbar

    Click the puzzle piece icon next to the address bar, find Gilmedia SERP Counter and click the pin. The orange G now sits next to your address bar.

  3. Run a search

    Go to Google and search for anything. Numbered badges appear beside every result and the summary panel sits in the bottom right. Jump to page 2 and watch the numbers keep going instead of resetting.

Seeing a caution screen? Chrome shows "not trusted by Enhanced Safe Browsing" on extensions from publishers that are new to the store, and this one went live in August 2026. It is a note about the publisher's age, not about the code. Click Continue to install. The only sites it can touch are Google's own search domains, and it sends nothing anywhere.

Setup

Tell it what to look for

Click the orange G and add what you want tracked. Two fields, because Google shows a URL in some places and a business name in others.

Domain

Matches organic results and Ads. Enter example.com, not the full URL. Subdomains match automatically, so example.com also catches shop.example.com.

Business name

Matches the local pack, Local Services Ads and Maps, where Google prints a name rather than a link. Partial is fine: Northside matches Northside Windows and Doors.

Track more than one

Add your own domain and two competitors and see all three positions on the same search. Your list syncs through your own Chrome profile, so it follows you to any machine you sign into.

A long list gets a manager

Past a couple of dozen domains a textarea stops being pleasant, so Manage opens a full page: one row per domain, search by domain or business name, sort, and a duplicate check that filters down to the rows that repeat. Everything saves as you type, and comment lines stay exactly where you put them.

FAQ

Reasonable questions

Is this a rank tracker?

No, and it is worth being clear about that. Google personalises and localises results, so this shows what your browser sees, from your location, signed into your account. Two people running the same search get different pages.

Use it for spot checks, client calls and quick competitive looks. For trend data over time you still want a proper rank tracking tool with a clean, consistent environment.

Is Developer mode safe?

Yes. It is a standard Chrome feature that lets you run an extension from a folder rather than from the Web Store. The tradeoff is that you are trusting the source of the folder, which is why the entire codebase here is public and readable.

Chrome will show a "Disable developer mode extensions" prompt on some updates. Click Cancel or Keep, and the extension continues working.

What data does it collect?

None. There is no backend and no analytics. The only network request the extension can make is one you configure yourself: pointing it at your own shared list file on your own server, which it then fetches and nothing else. Your domains, cities, keywords and preferences are saved with the storage permission in Chrome's own sync storage, which is your Chrome profile, not our server. The privacy policy lists every permission and what it is for.

Chrome says it is not trusted by Enhanced Safe Browsing. Is that bad?

No. That message is about how long the publisher has been on the store, not about what the code does. Google's own wording is that new developers generally take a few months to become trusted, and roughly a quarter of all store extensions carry the same notice at any given time. This one went live in August 2026.

What you can check instead of taking anyone's word: the host permissions are Google's own search domains and nothing else, so it runs on Google search and Maps pages and cannot read any other site. There is no backend, and the only request it can make is to a shared list file you point it at yourself.

The numbers look wrong. Now what?

Google rewrites its HTML without notice. Detection here is structural rather than keyed to Google's class names, which survives most redesigns, but nothing survives all of them.

Open an issue on GitHub with the search you ran and the country you ran it from, and it can be fixed. If a section genuinely cannot be read, the panel says so rather than showing you a wrong number.

The local pack is not getting numbered

Google ships several different structures for that section and rotates between them. Open the extension popup, tick Log detection to the console, reload the search, then open DevTools and run __gilSerpDiag().

That prints what each detection strategy matched. Paste the output into a GitHub issue and the selectors can be corrected precisely rather than by guesswork.

Does it work in Edge, Brave or Arc?

Yes. Brave and Arc install straight from the Chrome Web Store listing. Edge asks you to allow extensions from other stores first, then installs it the same way.

Loading it unpacked works in all of them too. The extensions page lives at edge://extensions in Edge and brave://extensions in Brave.

Does it work on google.co.uk, google.ca and other regions?

It covers the common country domains including the UK, Canada, Australia, Ireland, New Zealand, France, Germany, Spain, Italy, the Netherlands, Mexico, Brazil and India. If yours is missing, open an issue and it takes one line to add.

Will it slow Google down?

No. It reads the page that has already loaded and adds a badge to each result. There is nothing to fetch and nothing to wait for.

Still stuck? The support page covers the problems that come up most often, what to send if you need to report something, and how long a reply usually takes.

Privacy

Nothing leaves your browser

No collection

No analytics, no telemetry, no usage reporting. Nothing is recorded anywhere.

No server

There is no backend to send anything to. Left as it ships, the extension makes zero network requests; the one it can make is a fetch of the shared list file you point it at yourself.

Google pages only

It runs on Google search and Maps and nowhere else. storage keeps your lists, the clipboard permission is for the copy button, and the screenshot it takes for that button never leaves your machine.