Skip to main content
[ USE CASE / SEO MONITORING ]

Check how your site ranks from the city where your customers search

Enter a keyword, choose the market and device, and read the search results exactly as someone there would see them — the Google results shown in Austin on mobile, not the ones shown to your office.

  • 01Enter a keyword you care about.
  • 02Choose the market and device — country or city, mobile or desktop.
  • 03Read and compare the results: the same keyword across cities, kept comparable over time.

What Ludax provides: the location you check from and a consistent network and device profile, so repeat checks stay comparable. What you provide: the rank tracker, parser, browser or SEO tool that collects and stores the rankings. Ludax is not a hosted rank-tracking dashboard.

$1.49/ 1 GBResidential TLS, prepaid. Volume pricing reaches $0.74 / GB at 1 TB · plans are valid for 30 days from activation
  • 137 COUNTRIES
  • CITY TARGETING
  • SAME VISITOR 1–1000 MIN
  • REAL BROWSER PROFILES
  • METERED TO THE KB

Try it — sample results. Change the keyword, market or device and watch the results reorder, the way they do when the check runs from that place.

rank watchSAMPLE RUN
VISIBILITY74%
AVG POSITION8.4
WINNERS12
LOSERS4

VISIBILITY, LAST 8 CHECKS · US / AUSTIN · MOBILE

8 CHECKS AGONOW

Sample data for illustration. Every panel and figure on this page is an example of what a localized check returns — not a measured result or a ranking promise.

181 countriesCountry targeting everywhere, city targeting on residential exits where the local pack decides the click.
1–1000 minutesHold one address for a whole keyword walk (a “sticky session”), or change it on every request.
127 TLS profilesThe handshake a real browser sends, captured from Chrome, Safari, Firefox and Edge builds and kept fixed for the session.
Metered per KBPrepaid traffic, no subscription, and plans valid for 30 days from activation.
[ 01 / WHY LOCALIZATION MATTERS ]

Location, device and session decide the number you record

The same keyword can rank #4 nationally, #11 in Austin and #2 in Denver — so where you check from is part of the result. Most unreliable rank data is not a parser bug. It is a collection bug: the check ran from the wrong place, on the wrong device profile, or across an address that changed halfway through.

LOCATION

Checked from a cloud region

Search engines localize on the requesting address, and a hosting range is not where your customers are. Country is the baseline; city is what makes local-pack data meaningful.

One keyword, three answers: US national #4 · Austin #11 · Denver #2.

DEVICE

Mobile and desktop are different pages

A mobile result page carries more paid and feature modules above the organic block, so the same position number occupies less screen. Averaging the two hides both.

Keep one device profile per series, and match the TLS profile to the user agent you send.

SESSION

The address changed mid-check

Query, then page two, then a refinement — if the exit rotates between steps the engine sees three unrelated visitors and the sequence stops being comparable.

Hold one sticky session per keyword walk: -session-kw118-time-5.

Positions also wobble a place or two between identical checks. Compare against a rolling median rather than treating every check as news.

[ 02 / ONE KEYWORD, FIVE MARKETS ]

The same query, assembled differently in every market

Compare the same keyword across cities and the pages barely match: different language, currency, domains and a different order of blocks on the page. Pick a market to see what a searcher there is served, and the gateway setting that reads it.

WHAT FILLS THE TOP OF THE RESULTS PAGE · AUSTIN, US · MOBILE

STYLIZED LAYOUT VIEW · SAMPLE DATA

usAustin, United Statesgoogle.com · en-US · USDLOCAL PACK
WHAT LOADS
A three-pack of Austin showrooms sits above the first organic result
WATCH FOR
Pack composition changes weekly while the organic block barely moves
gateway parameter
YOUR_PASSWORD-country-us-city-austin
[ 03 / WORKFLOW ]

Three decisions, one gateway

Ask for the market you sell in

Add the country — and the city when the keyword has local intent — to the password field, then pin one device profile per series.

Browse locations
COUNTRY-country-us
CITY-city-austin
DEVICEone profile per series

One context per keyword walk

Rotate between keywords so each query is read fresh, but hold a sticky session for the steps inside a single check. Five minutes is usually enough; retry on a new token rather than reusing one that failed.

Parameter reference
BETWEEN KEYWORDSrotating
WITHIN A CHECK-session-kw118
TTL-time-5 (1–1000 min)
TLS PROFILE

Compare like with like

Check the shape of the document before you store a row, keep the SERP features that surrounded each position, and alert on sustained movement instead of single checks.

Residential TLS details
VALIDATE≥ 8 organic nodes
BASELINE7-day median
ALERT ON±3 places, 2 checks
[ 04 / SIGNALS ]

What you can watch

LUDAX delivers the localized page; your parser decides what to record. Pick a signal to see the settings we would start with.

Positions, per market, on one device

The core series. Rotate an exit per keyword so no single address carries the whole set, and keep the device profile fixed so the trend line stays comparable.

SESSIONrotating, one per keyword
LOCATIONcountry, city on local intent

SAMPLE DATA · POSITION BY MARKET

gb#4
us#7
de#14
jp#21
[ 06 / CAVEATS & RESPONSIBLE USE ]

Settings that decide the outcome

R1Location accuracy

Country targeting is the reliable baseline; city targeting narrows the exit to a metro area and is what makes local-pack monitoring meaningful. Availability varies by market and by moment — treat a city parameter as a strong preference, log the exit's reported region with each check, and discard rows that do not match.

R2Pacing and scheduling

Run a series at the same local hour so you are not comparing a morning page with an evening one. Spread queries with jitter instead of firing a keyword list in a tight loop, and rotate the exit between keywords. Daily suits money terms; weekly is enough for the long tail.

R3Parsing resiliently

Assert the shape of the document before you trust it: a minimum count of organic nodes, the expected locale, and no interstitial markers. An interstitial returns HTTP 200 and parses cleanly, so without that check it lands in your warehouse as a day when you ranked nowhere.

R4Responsible use

Read public result pages at a reasonable pace, for your own measurement. Do not use the network to click competitors' ads, manipulate engagement signals, or circumvent access controls — the acceptable use policy prohibits it and accounts are terminated for it.

No guarantees. Results depend on the search engine, the market, your pacing and your parser. No proxy network can promise a challenge-free check, and no monitoring setup can promise a ranking outcome.
rank_check.py
import requests

USER, PASS = "YOUR_USERNAME", "YOUR_PASSWORD"

def proxy(country, city=None, session=None, profile="chrome145"):
    pw = f"{PASS}-country-{country}"
    if city:    pw += f"-city-{city}"
    if session: pw += f"-session-{session}-time-5"
    pw += f"-profile-{profile}"
    url = f"http://{USER}:{pw}@gw.ludaxproxy.com:9999"
    return {"http": url, "https": url}

# one sticky context per keyword walk, rotate between keywords
r = requests.get("https://www.google.com/search",
                 params={"q": "best standing desk", "num": 20, "hl": "en"},
                 proxies=proxy("us", city="austin", session="kw118"),
                 timeout=30)

# validate the shape before storing the row
assert r.status_code == 200 and r.text.count("<h3") >= 8
Gateway
gw.ludaxproxy.com:9999 (Residential TLS · HTTP and HTTPS)
Headless
One sticky session per browser context, so the exit cannot change mid-check.

Full parameter reference in the documentation.

[ FAQ ]

SEO monitoring FAQ

01How often should I check a keyword?

Daily for the terms that drive revenue, weekly for the long tail. Compare each check against a rolling median and alert only on movement that survives two consecutive checks.

02Can I monitor at city level?

Yes. Add -city-austin to the password field on residential exits. City availability varies by market, so log the exit’s reported region with every check and discard rows that do not match.

03Should I track mobile or desktop?

Whichever your customers use, kept as separate series. Mobile result pages carry more paid and feature modules above the organic block, so the same position number means less screen space.

04Can I track SERP features, not just positions?

That is your parser’s job. LUDAX delivers the localized page; recording which modules appeared explains traffic changes on days when the position number did not move.

05Residential TLS or standard Residential?

Residential TLS is the product priced on this page: $1.49 for 1 GB, down to $0.74 per GB at 1 TB. Standard Residential is a separate product from $0.49 per GB, without pinned browser handshakes. Neither can promise a challenge-free check.

[ START HERE ]

Check one market. Then all of them.

Buy the smallest amount of traffic, run your keyword set from inside the market you sell in, and compare it with whatever you are reporting today.

$1.49/ 1 GB · $0.74 / GB at 1 TB

$1.49 / 1 GBResidential TLS · prepaid Start monitoring

This page is being migrated

This destination has not yet been migrated to the original design.