Meta Marketing API v24 Sunset: What Breaks Oct 6

automation
Meta and n8n app icons on a dark slate desk between a mechanical flip clock and a coiled network cable with a blank tag, illustrating the Meta Marketing API v24.0 sunset deadline for n8n workflows
Marketing API v24.0 stops being a supported Ads API version on October 6, 2026. The Graph API keeps v24.0 until 2028, which is why this one is easy to miss.

Meta Marketing API v24.0 expires on October 6, 2026. After that date, ads, insights and Conversions API calls pinned to v24.0 are either quietly rerouted to a newer version or rejected, and you don't get to choose which. If you run self-built integrations (n8n workflows, server-side tracking, custom reporting), move them to v25.0 this week and log the X-Ad-Api-Version-Warning header so you can see what Meta is already flagging.

The reason this one slips past people: the Graph API keeps v24.0 alive until February 2028. Same version number, two different clocks. Your Facebook Page posting workflow on v24.0 is fine. Your Meta Ads insights pull on v24.0 isn't.

We maintain Meta integrations for clients across lead gen, ecommerce and local services, most of them in n8n. Here's what we checked, what we found when we probed the API directly, and the audit we're running before the deadline.

What exactly expires on October 6, 2026?

Meta's Marketing API version table lists three relevant versions:

  • v23.0: released May 29, 2025, expired June 9, 2026
  • v24.0: released October 8, 2025, expires October 6, 2026
  • v25.0: released February 18, 2026, no expiry set yet

v26.0 shipped on July 29, 2026 too, with its own list of removals. More on that below.

"Marketing API" covers more than people think. It's not just campaign management. It includes:

  • Ads Insights: every dashboard, report or Looker Studio connector you built yourself
  • Conversions API: server-side events posted to /{pixel_id}/events
  • Campaign, ad set and ad creation or edits: bulk launchers, budget rules, pause-on-CPA scripts
  • Custom audiences: CRM list syncs
  • Lead ads retrieval: pulling lead data by leadgen_id

If your integration touches ads money, ads data or ad conversions, it's on the Marketing API clock.

Will my v24.0 calls fail or keep working?

It depends on the endpoint, and that's the uncomfortable part.

Meta's versioning docs say that once a version is unavailable, "any calls made to that version number may fail or be upgraded to the next available version." Since May 2024 Meta has run a Marketing API auto-upgrade: if the endpoint you're calling didn't change in the next version, the call is silently executed on that version instead, and the response carries an X-Ad-Api-Version-Warning header. Meta announced a further auto-upgrade release alongside v26.0 on July 29, 2026.

If the endpoint did change, the call can fail. The classic error is:

(#2635) You are calling a deprecated version of the Ads API.
Please update to the latest version.

So "it'll probably auto-upgrade" is true for a lot of calls. But the calls most likely to have changed between versions are exactly the ones you care about: insights fields, attribution settings, campaign objectives and placements.

Auto-upgrade isn't a migration plan. It's a safety net with holes in it, and you can't see the holes in advance.

What did we see when we probed the API?

We sent unauthenticated requests to graph.facebook.com on October 1, 2026 and read the response headers. No token means every call errors out, but Meta still stamps the version handling on the response, which is what we wanted to see.

  • v19.0 and v20.0 campaign and Conversions API calls: came back with x-ad-api-version-warning: The call has been auto-upgraded to v21.0 as v20.0 has been deprecated. and facebook-api-version: v21.0. These versions are dead on both clocks, so Meta rerouted them.
  • v21.0, v22.0 and v23.0 calls: came back with x-ad-api-version-warning: You are calling a deprecated version of the Ads API. but still executed as the version requested. These are dead on the Marketing API clock and alive on the Graph API clock.
  • v24.0 and v26.0 calls: no warning header at all. As of today v24.0 is still a supported Ads version.

Two caveats, because we'd rather be accurate than tidy. Our probes had no access token, so they show how Meta routes and flags versions, not whether a specific authenticated endpoint returns data or #2635. And on unauthenticated requests the warning showed up even on /me/accounts, so treat the header as a version signal, not proof a given path is an Ads endpoint.

Here's the practical takeaway: from October 6, expect your v24.0 calls to start carrying that same "deprecated version of the Ads API" warning. Logging the header now gives you a free early-warning system.

Where do v24.0 calls hide in an agency stack?

In our experience, rarely in the places people check first. The vendor integrations (Zapier, Make, Hyros, Shopify's Meta channel, GTM server-side templates you keep updated) manage their own version. The risk sits in what your team built.

n8n workflows

n8n's Facebook Graph API node has a "Graph API Version" dropdown on every node. The options run from v3.0 up to v25.0, plus "Default". Whatever you picked when you built the workflow is saved in the node and never changes on its own. A workflow built in late 2025 with v24.0 selected stays on v24.0 forever.

"Default" sends an unversioned call, which uses the version set on your Meta app. That's fine only if somebody keeps the app's version current.

The HTTP Request node is the bigger risk. Every hand-built call to https://graph.facebook.com/v24.0/act_.../insights has the version hardcoded in the URL. We find these in reporting workflows, CAPI relays and budget alerts.

The built-in Facebook Lead Ads node calls a fixed version in n8n's own code (v21.0 in the current source). That's n8n's to maintain, so update n8n rather than patching it yourself. If you follow a tested upgrade and rollback process, it's a low-risk change.

Server-side Conversions API

Custom CAPI senders (a Node script, a Cloudflare Worker, an n8n workflow) almost always pin a version in the URL. This is the one that hurts if it fails quietly, because events stop matching and you only notice when Event Match Quality or reported conversions drop days later. If you set CAPI up from our Conversions API guide, check the endpoint URL in your sender.

Reporting and AI agents

Client dashboards that pull insights, plus any AI agent that reads or edits campaigns. If you've given an agent access to Meta Ads, add the API version to the checklist alongside the guardrails we use for Meta Ads MCP servers, and check which version the server calls.

How do you audit everything before October 6?

This is the order we run it in. Most of the time goes into step 4, not finding the calls.

1. Inventory every Meta call

Export your n8n workflows as JSON and grep them:

grep -rhoE "graph(-video)?\.facebook\.com/v[0-9]+\.0" ./workflows | sort | uniq -c
grep -rlE "\"graphApiVersion\": \"v(1[0-9]|2[0-4])\.0\"" ./workflows

The first line counts hardcoded versions in URLs. The second finds Facebook Graph API nodes pinned to v24.0 or older. Run the same search over code repos and Worker scripts.

2. Sort by clock

For each hit, ask one question: does it touch ads, insights, CAPI, audiences or leads? Those move now. Page publishing, Instagram content and Messenger calls are on the Graph API clock and can wait, although moving them too saves you a second pass later.

3. Log the headers

Add a step that keeps facebook-api-version and x-ad-api-version-warning from the response. In n8n, turn on "Include Response Headers and Status" in the HTTP Request node options and write both values to your execution log or error channel. If you already route failures through an n8n error workflow, send version warnings there as a low-priority alert.

4. Upgrade to v25.0 and test against real responses

Change the version, then run each workflow once against a test ad account, or the Conversions API test events tool for CAPI. Compare the output field by field. Insights changes between versions are mostly deprecated fields and attribution settings, and they don't throw errors. They just come back empty or different.

Diff the payload, not the status code. A 200 with a missing field breaks a client report just as badly as a 400.

5. Pick v25.0 over v26.0 for now

v25.0 has no published expiry, and n8n's node already lists it. v26.0 is newer but removes delivery estimate fields (daily_outcomes_curve, budget_guardrail, estimate_dau), blocks poll ads and drops the Instagram Explore feed placement. If none of that touches you, v26.0 buys more runway. If you're not sure, v25.0 is the lower-risk jump.

What else changes on October 27?

Meta's v26.0 changelog says several restrictions extend to all remaining versions on October 27, 2026, including unversioned calls. The ones agencies hit:

  • Web and App destinations: creatives set to applink_treatment=web_only can no longer attach to ads in campaigns using "Website and App" conversion locations
  • Poll ads: poll_spec is blocked when creating or updating ads and creatives

If you launch ads through the API, the October 6 version bump doesn't protect you from October 27. Those changes land no matter which version you call. Test ad creation flows separately.

What's our point of view?

Most agencies will get through October 6 without noticing anything, because auto-upgrade will catch most of their calls. That's exactly the problem. "Nothing broke" and "the numbers are still right" aren't the same thing, and version drift tends to show up as a quiet reporting discrepancy weeks later, not an outage.

We'd rather spend an afternoon now than explain to a client why their September-to-October CPA comparison doesn't line up. If you've been through a migration like the Google Ads Data Manager API move, it's the same lesson: the deadline matters less than knowing every place your stack talks to the platform.

Want us to check your Meta integrations?

We'll inventory every n8n workflow, CAPI sender and reporting pull that talks to Meta, tell you which are pinned to expiring versions, and move them to v25.0 with before-and-after payload checks. Get a Free Automation Audit and we'll start with the ones that touch ad spend and conversions. Or see how we build and maintain n8n workflow automation for agencies and in-house teams.