Use Cases / SEO Rank Tracking
SEO Rank Tracking
Search rankings change daily, vary by location, and differ between devices. If you are managing SEO for a website - especially across multiple countries - you need to track rankings from the locations that matter to your business. Browser7's geo-targeting makes this straightforward.
What you can track
Keyword positions
Where your site appears for specific search queries. Track position changes daily to measure the impact of your SEO efforts and catch drops early.
SERP features
Featured snippets, People Also Ask, knowledge panels, and local packs. Know when your site gains or loses SERP features and which competitors hold them.
Competitor rankings
Track where competitors rank for your target keywords. Identify which competitors are gaining or losing ground and which new sites are entering your space.
Local and international rankings
Google shows different results in different countries and cities. Track how your site ranks in each market you serve, not just from your office location.
Check rankings for a keyword
This example scrapes Google search results for a keyword and extracts the organic ranking positions with titles and URLs. Use this as the building block for a rank tracking system.
from browser7 import Browser7
from bs4 import BeautifulSoup
import json
client = Browser7(api_key="b7_your_api_key")
result = client.render(
"https://www.google.com/search?q=best+running+shoes",
captcha="auto",
country_code="US",
)
soup = BeautifulSoup(result.html, "html.parser")
rankings = []
for i, div in enumerate(soup.select("div.tF2Cxc"), 1):
link = div.select_one("a")
title = div.select_one("h3")
rankings.append({
"position": i,
"title": title.get_text(strip=True) if title else None,
"url": link.get("href", "") if link else None,
})
print(json.dumps(rankings[:10], indent=2))Google serves reCAPTCHAs to automated traffic, so captcha="auto" is recommended. See our Google scraping guide for pagination and additional SERP feature extraction.
Track rankings across countries
This is where Browser7's geo-targeting is particularly valuable. The same keyword returns different results in different countries - sometimes completely different. Track your position in every market you serve with a single script.
from browser7 import Browser7
client = Browser7(api_key="b7_your_api_key")
keyword = "best running shoes"
countries = ["US", "GB", "DE", "FR", "AU"]
for country in countries:
result = client.render(
f"https://www.google.com/search?q={keyword}",
captcha="auto",
country_code=country,
)
# Parse rankings for each country
print(f"{country}: {len(result.html)} chars")Browser7 supports 195 countries and city-level targeting. If you need to track local SEO rankings for specific cities (e.g. "plumber near me" from London vs Manchester), use the city parameter for even more precise results.
Why Browser7 works well for rank tracking
195-country geo-targeting
Most rank tracking tools support a limited set of countries or charge extra for international tracking. Browser7 supports every country at the same price, so adding a new market to your tracking is just changing a parameter.
Built-in CAPTCHA solving
Google aggressively serves CAPTCHAs to automated search requests. Browser7's captcha="auto" handles reCAPTCHA automatically, so your rank tracking pipeline does not get stuck on challenge pages.
Residential IPs for accurate results
Google may return different results for datacenter IPs vs residential IPs. Since Browser7 exclusively uses residential proxies, the search results you get match what real users see - which is what your rankings actually are.
Full SERP rendering
Google's search results page uses JavaScript to render features like People Also Ask, knowledge panels, and some ad formats. Browser7's full Chrome rendering captures everything on the page, not just the basic organic links.
What this costs
Every search result page costs $0.01. Here are some typical rank tracking workloads:
| Workload | Pages/day | Daily cost | Monthly cost |
|---|---|---|---|
| 100 keywords, 1 country, daily | 100 | $1 | $30 |
| 500 keywords, 5 countries, daily | 2,500 | $25 | $750 |
| 1,000 keywords, 10 countries, daily | 10,000 | $100 | $3,000 |
Related guides
- How to Scrape Google Search Results - SERP parsing with pagination
- How to Scrape Google Maps - local business rankings and reviews
- Geo-Targeted Scraping - country and city-level targeting
- CAPTCHA Solving - handling Google reCAPTCHA