LinkedIn Marketing API

LinkedIn Legacy Geo Targeting Is Being Switched Off — Is Your Ads Integration Ready?

If your LinkedIn Ads integration creates or edits campaigns using country, region, or state-level geo URNs, a hard cutover is coming. LinkedIn is completely retiring Legacy Geo for Ads Targeting, and every campaign-creation call still using the old geo format will start failing — not with a warning, with a rejected API call.

⚠ Hard cutover: August 31, 2026

What's Actually Changing

✕ Legacy Geo (Retired Aug 31, 2026)

  • Targeting built on urn:li:countryGroup:{id}
  • urn:li:country:{id}, urn:li:state:{id}, urn:li:region:{id}
  • Any saved audience or campaign template still referencing these formats
  • After the cutover: create/update calls using these values are rejected outright

✓ Bing-Geo (Required Going Forward)

  • A single unified format: urn:li:geo:{id}
  • Replaces country, country-group, state, and region URNs with one geo hierarchy
  • LinkedIn's own Bing Geo Migration Guide is the authoritative ID mapping source
  • Must be in place in production before the deadline, not tested after

Per LinkedIn's own Marketing API changelog: starting August 31, 2026, LinkedIn will completely stop supporting Legacy Geo for Ads Targeting. Requests to create campaigns using legacy geo values will result in a 400 error with the INVALID_VALUE_FOR_FIELD code. All partners and developers must migrate to Bing-geo. This lands in the same changelog batch as LinkedIn also removing the top-level location field from profile API responses — a separate change, but a sign LinkedIn is actively cleaning up legacy geo data across the platform this year.

What a Clean Migration Actually Requires

1
Audit every place a geo URN gets writtenCampaign creation calls, saved audience templates, targeting presets, and any cached targeting facets in your own database all need to be found — not just the obvious API calls.
2
Re-map legacy IDs to Bing-geo IDs correctlyThe mapping is not always a clean one-to-one swap — country-group and region-level legacy targeting doesn't always collapse into a single Bing-geo ID the same way, and getting this wrong silently narrows or widens who a campaign actually reaches.
3
Test against a non-production ad account firstValidating the new geo values on a live, spending campaign is the wrong place to discover a mapping error.
4
Coordinate the cutover timingAny scheduled campaigns, recurring budget rules, or third-party ad-management tools writing to the API need to be updated in the same window — a partial migration still fails after Aug 31.
5
Monitor error logs immediately after the cutoverAny code path that was missed during the audit surfaces as INVALID_VALUE_FOR_FIELD errors right when campaigns are supposed to go live.

Where LinkedIn Ads Integrations Actually Break on Migrations Like This

  • Third-party libraries or SDKs with legacy geo URNs hardcoded internally, outside your own codebase
  • Saved audiences and campaign templates created months or years ago that nobody remembers still reference legacy geo
  • Country-group-level legacy targeting that doesn't map cleanly to a single Bing-geo value
  • Multi-account or agency setups where the same fix has to be replicated across dozens of ad accounts
  • No sandbox environment that exactly mirrors production targeting behavior, so errors only show up live

The Real Cost of Missing the Deadline

This isn't a soft deprecation with a grace period. After August 31, 2026, campaign-creation and campaign-edit calls using legacy geo values are rejected at the API level — meaning paused campaign launches, blocked budget changes, and ad delivery gaps for any integration that isn't migrated in time.

This content is based on LinkedIn's own Marketing API "Recent Changes" documentation and Bing Geo Migration Guide (Microsoft Learn, li-lms-2026-08). LinkedIn and Microsoft control this API change independently. This is not an official LinkedIn or Microsoft publication, and this is not an official LinkedIn partner service.

Getting the ID re-mapping right, coordinating a clean cutover across every campaign and account, and confirming zero INVALID_VALUE_FOR_FIELD errors after Aug 31 is exactly the kind of API migration work handled through the LinkedIn API Setup Service. If your integration is also working through a LinkedIn Advertising API Standard Tier upgrade, this migration is worth handling in the same pass. For a full overview of services, visit the Services page, or reach out via the Contact page.