A campaign goes live in eleven markets. The creatives were translated, reviewed and approved. The platform reports delivery in all eleven. Everyone moves on.
Three weeks later someone in the Dutch office mentions that the Dutch ads have been showing prices in euros with a decimal separator that reads as a thousand-fold error, and the landing page has been English the whole time. Delivery was fine. Spend was fine. The experience was broken, and nothing in the reporting stack was designed to notice.
This is the gap between campaign approval and campaign delivery. Approval happens in your own tools. Delivery happens on a stranger’s screen in a country you are not in.
What localized delivery can break independently of the ad
The creative being correct in your asset manager tells you very little, because the served experience is assembled from several systems that can each be wrong on their own.
The wrong variant is served. Language and market targeting can be set correctly and still fall back to a default when a rule does not match, when a variant is rejected mid-flight, or when the platform optimises toward a variant that happens to be the English one.
The creative is right and the landing page is not. The most common failure by a wide margin. The ad is localized, the destination is not, or it redirects through a geo-router that resolves to the wrong regional site.
Currency, number and date formatting. Correct currency, wrong separator convention. Correct format, wrong currency for the market. Prices converted at a stale rate.
Legal and regulatory copy is missing or generic. Required disclosures, consent flows, and age or eligibility notices differ by jurisdiction. A campaign that is compliant in one market can be non-compliant in another while showing identical creative.
Offers leak across borders. A market-specific promotion is visible where it is not valid, which is a commercial problem before it is a marketing one.
Store and app links resolve to the wrong storefront. Deep links that assume one region send users to a listing they cannot buy from.
None of these produce an error in a reporting dashboard. They produce normal-looking delivery of a broken experience.
Verification has to happen from inside the market
You cannot check this from headquarters. The whole class of failure is triggered by the visitor’s apparent location, so an observer in the wrong location either sees the correct experience or sees a default, and both readings are useless.
That is what a local vantage point is for. Residential proxies with country and city targeting let a QA process observe the campaign the way a local user encounters it. With the Shifter gateway, targeting and session go in the credentials against p.shifter.io:443:
customer-USERNAME-country-nl-sid-qa-nl-31-ttl-600:PASSWORD
country-nl sets the market, sid-qa-nl-31 holds one exit across the whole journey from impression to landing page so the check follows a single coherent session, and ttl-600 keeps that address for ten minutes. A sticky session matters here more than in most collection work, because the thing being verified is a multi-step flow.
One detail decides whether the check is valid: the locale signals have to agree with the exit. A Dutch IP sending an Accept-Language header of en-US is not a Dutch visitor, and many geo-routers key on the header rather than the address. If they disagree, you are testing an inconsistent visitor and will get an inconsistent answer. This is covered in matching proxy geo, timezone and locale.
The verification matrix
A serious check is a matrix, not a spot look. Each row is a thing that can independently be wrong, with a defined pass condition.
| Check | Pass condition | Evidence to keep |
|---|---|---|
| Ad served | The intended variant appears for this market | Screenshot, placement, timestamp |
| Language | Creative and landing page in the market language, with no fallback | Rendered text, lang attribute, page copy |
| Currency and formatting | Correct currency, separators and date format for the locale | Screenshot of the price block |
| Offer validity | The promotion shown is valid in this market | Offer text, terms link, eligibility copy |
| Legal copy | Required disclosures present, localized, and correctly linked | Disclosure text and consent state |
| Landing page match | Destination resolves to the intended regional page | Full redirect chain and final URL |
| Device parity | Mobile and desktop both serve the correct experience | Both device profiles captured |
| Store and deep links | Resolve to the market’s storefront | Final URL per platform |
Capture the redirect chain rather than just the final URL. When a landing page is wrong, the chain is what tells you which hop made the decision, which is the difference between a fifteen-minute fix and a week of speculation.
Run it on a schedule, not just at launch
Launch-time verification catches the initial configuration and nothing after it. These failures appear later, and usually from a change nobody connected to the campaign.
Three triggers are worth wiring up. Release-gated, before a campaign or a landing-page change goes live. Scheduled, at a cadence per market tier, because CDN rules, geo-routing tables, consent tooling and platform optimisation all drift. Event-driven, after a creative rotation, a pricing change, a site deployment or a regulatory update in one jurisdiction.
Keep request rates ordinary and back off on errors, as in rate limiting and request throttling. And do not click your own live ads as part of a check, since that spends budget and pollutes performance data; observe the impression, then request the landing page directly.
Verify the verifier
A localization check is only as trustworthy as the vantage point it ran from, and this is the step most programmes skip.
Confirm the exit actually resolved to the market you asked for, and record it with each result. Distinguish a network failure from a product failure, because a timeout is not evidence that the correct experience was present. And run a control check twice from two different exits in the same market: if they disagree, the campaign is behaving inconsistently and that is itself the finding.
The method for establishing that baseline is in testing proxy speed, success rate and location accuracy.
The same discipline applies to compliance-driven checks with a legal deadline attached, which is treated at length in age verification as a geo-compliance testing problem.
Route findings to whoever can fix them
Localization failures cross team boundaries, which is why they survive so long. A finding needs to arrive at the right desk with the evidence attached.
Wrong variant goes to media. Wrong landing page or redirect goes to web engineering. Wrong currency or offer goes to commercial. Missing legal copy goes to legal and compliance, with the market named. An unrouted finding in a shared spreadsheet is a finding that will be rediscovered next quarter.
Track one metric above the rest: time between a localization defect appearing and being detected. That number is what the programme exists to reduce.
FAQ
Can I not just ask the local team to check?
For a few markets, yes, and it does not scale, it is not repeatable, and it produces no evidence record. Human spot checks are a good complement to an automated matrix, not a substitute.
Do platform previews show what a market will see?
They show the creative, not the assembled experience. Previews do not exercise geo-routing, consent tooling, currency logic or the landing page, which is where most of these failures live.
How many markets need checking?
All of the ones you spend in. Tier the cadence by spend and regulatory exposure rather than reducing the coverage.
What is the single highest-yield check?
The landing page and its full redirect chain, per market, on both device profiles. It catches more real defects than any other row in the matrix.
The bottom line
Approval is not delivery. A campaign can be correctly built, correctly translated and correctly targeted, and still serve the wrong language, the wrong currency, an invalid offer or a missing legal disclosure, because the served experience is assembled by systems your approval process never touched.
The only way to know is to look from inside each market, with locale signals that match the vantage point, across a defined matrix, on a schedule, keeping the evidence. The product view is on the geo-targeted ad monitoring page, with rates on the pricing page.