Meta partnership ads and TikTok Spark Ads: how the codes work and when they expire
Meta gives a partnership ad code no end date; the creator turns it off. A TikTok Spark Ads code lasts 7, 30, 60 or 365 days. Permissions, fixes and limits.
- Hristijan Jankulovski
- 18 min read
Meta gives a partnership ad code no end date: it works until the creator switches it off in the post's settings (Partnership label & ads on Instagram), and ads already made from it keep running until someone stops them. A TikTok Spark Ads code does expire. The creator sets it to 7, 30, 60 or 365 days, and an expired code fails in TikTok Ads Manager with error 4025, "Authorization expired." On both platforms, an account-level permission removes the need for a code on every post.
Guides that rank for these questions disagree on the TikTok numbers. One, published in May 2026, lists 7, 30, 60, 90 or 365 days; another, from June 2026, adds "no expiration." TikTok's own steps list four lengths, and 90 days and "no expiration" aren't among them.
What are Meta partnership ads?
They are what Meta used to call branded content ads: "Branded content ads are now called partnership ads." Meta's page About Partnership Ads on Instagram and Facebook defines them:
Partnership ads allow advertisers to run ads with partners: creators, brands and other businesses. The partner and/or advertiser accounts are featured in the ad's header and the ads leverage signals from both accounts for improved ranking and incremental performance.
The newest change is on the same page: "Starting in September 2026, you can create partnership ads in the WhatsApp Status placement." Instagram's page on supported objectives and placements lists the rest:
| App | Placements for partnership ads |
|---|---|
| Feed, Web Feed, Explore Feed, Explore Grid, Stories, Reels | |
| Feed, Stories, Reels, Marketplace | |
| Status |
Meta says advertisers "must either have a Facebook Page or a professional account on Instagram to run partnership ads." The ad doesn't appear on the creator's profile ("the partnership ad itself won't be visible on your profile"), but "The ad will be listed in the Ad Library," which the Meta Ad Library entry explains.
What is a partnership ad code?
A partnership ad code is a creator's permission for one post, in a form that fits in a message. Instagram's page Create a partnership ad code to share with partners describes it:
As a creator, you can generate a unique code to share with an advertiser to allow them to boost your content, including archived Instagram content, into partnership ads that feature one or both of your accounts in the header.
Meta counts a shared code as a content-level permission: "If a partner grants content-level permissions to an advertiser by sharing an ad code, the advertiser will be able to boost that content into a partnership ad." A code also lifts the tagging rule. With one, an advertiser can "Create ads from any Instagram or Facebook post, story or reel (regardless of whether it's branded content or if the advertiser is tagged)."
Where the creator finds it:
- On Instagram, while posting: tap "Partnership label & ads", turn on "Get partnership ad code" and share. The code is ready once the post is up.
- On an Instagram post that is already published: the post's three dots, then "Partnership label & ads", then the same toggle.
- On Facebook: the post's three dots, then "Share partnership ad code", then toggle on "Get partnership ad code".
Meta adds that "Ad codes can be used by up to 2 partners at a time" and "You can get a new code to share any time."
Why is the partnership ad code not showing on Instagram?
A code exists only for a professional account, an eligible creator and a post in an eligible format. Instagram's code page lists the three under "Before you begin":
- The account: "You must have a professional account on Instagram, or a Page or profile in professional mode on Facebook."
- The creator's eligibility. Meta's eligibility page limits partnership ads to "public content" on professional accounts and asks for "an authentic, established presence on Instagram or Facebook," which "includes maintaining a sufficient follower base." In the EU, the EEA and Switzerland, "your ability to advertise and monetize with ads is limited if your account is in an Accounts Center with a subscription to use Meta Products without ads or a less-personalized ad experience."
- The post's format, listed in Eligible formats for partnership ads.
The format rules are the ones that rule out single posts, and Instagram flags a failing post while it is being made: "you'll see a screen if your content is ineligible to be used as a partnership ad."
| Where the post is | What Meta lists as unsupported |
|---|---|
| Feed | "Posts with reminders" |
| Reels | A reel published "before October 15, 2021"; "Videos longer than 15 minutes"; "Music from the Instagram music library"; "Copyrighted music, unless the advertiser is the rights holder"; "Product tags"; "Face/camera effect"; "Tappable stickers" |
| Stories | "Videos longer than 60 seconds"; "More than 1 countdown sticker"; "Link stickers"; "Music stickers"; "Copyrighted music"; "Emojis"; "Reminders"; "Product tags"; "Face/camera effect"; "Third party camera effects"; an "@mention for other accounts not featured in the partnership ad"; poll stickers and swipe-up CTAs. Length, polls and swipe-up are allowed when the ad is made in Ads Manager without an existing story |
For sound, the supported options are "Royalty-free music from Sound collection" and "Original audio", so a reel set to a track from Instagram's music library can't become a partnership ad. Archives differ by app: "Archived Facebook content cannot be boosted to a partnership ad," while archived Instagram posts can be. The same format page asks for text and logos inside the safe zone "to avoid covering them with the profile icon or call to action"; before you boost a creator's reel, drop the file into the free safe zone checker.
Meta's how-to article links to an Instagram page called "Troubleshoot problems with a partnership ad code." On October 31, 2026, that page showed "This Page Isn't Available."
On the advertiser's side, the code goes in at the ad level, after the partnership ad toggle is on (steps 3 and 4 below).
How to create a partnership ad
Meta's article for this has an error code in its title, How to Create a Partnership Ad: Error #2446986, and walks through the setup. With a code:
- In Ads Manager, click + Create and pick an objective.
- Fill in the conversion location, budget, schedule and audience, then click Next.
- "At the ad level, turn on the partnership ad toggle."
- Click "Enter ad code or post info." In Meta's words, "You can paste your ad code, post ID or post URL. This will set the first identity of the partnership ad and will use the media associated with the code or post."
- Select the second identity for the header.
- Choose what the header shows: both identities, the first identity only, or dynamic identity.
- Publish. "Once you've created your ad, it will be reviewed by Meta and you'll be notified when it's been approved." How long Meta's ad review takes has Meta's timings.
Not every conversion location is open to partnership ads. Instagram's objectives table marks Calls as unsupported for traffic, engagement and sales, and Messenger, "Instant forms and Messenger", Instagram and Calls as unsupported for leads.
Dynamic identity is the default: "If you choose dynamic identity, the option predicted to make the ad perform best will be automatically selected. Note: Dynamic identity is turned on by default." Some placements override the choice. Meta says "The WhatsApp Status placement does not support dynamic identity or a single identity, so both identities are always displayed in the header," and Instagram's placements page says "Dynamic identity optimization and single identity are only available for Facebook Reels and Feed placements. Facebook Marketplace and Facebook Stories placements will deliver with both account identities displayed in the header."
Without a code, the advertiser needs an account-level permission (next section) and picks the identities under Identities, then Edit. An agency needs access too: "you'll need to grant your agency permissions across your Instagram account, Facebook page, and ad account." Through the Marketing API, an ad published without permission waits for one. Meta's Partnership Ads Creation docs say "If you publish the ad without permissions in place, Meta publishes the ad in a pending delivery state. The creator receives a permission request from the brand, which, once approved, allows the ad to be delivered."
About partnership ad permissions: content-level or account-level?
Meta's page About Partnership Ad Permissions starts with the rule: "To run partnership ads, advertisers need permission from the partner whose handle the ad will include. Creators and other partners can revoke these permissions at any time." There are two kinds:
| Content-level | Account-level | |
|---|---|---|
| Meta's summary | "more restrictive and are used for specific content promotions" | "broader access and are more suitable for ongoing partnerships" |
| The creator grants it by | Sharing a partnership ad code, or turning on "Allow brand partner to boost" on a post that tags the advertiser in the paid partnership label | Accepting the advertiser's request in the Instagram app, the Facebook app or the hub |
| The advertiser can run | That post, story or reel | Ads "from a partner's handle without pre-existing content", and the partner's existing posts that tag the advertiser |
Only the account-level list includes audiences: advertisers can "Include or exclude their partner's custom audience in their partnership ad campaign" (see custom audience). Boosting an existing post on account-level permission still needs a tag: on Instagram, "the paid partnership label, @mentions, people tags, product tags, or Instagram Collabs"; on Facebook, "the paid partnership label."
One case needs no permission at all: "If 2 Instagram or Facebook accounts are owned by the same business and an employee has ads access to both assets, they will be able to run partnership ads without partnership ad permissions."
Meta's pages use two names for the broader permission and two for the hub. Its advertiser page says "content-level or profile-level permissions" and links to the account-level page for the details. The hub article is titled Manage account-level permissions for partnership ads in Partnership Ads Hub, but its heading says Creator Marketing Hub, and its steps start in Meta Business Suite: "click Creator Marketing on the left navigation bar", then Manage permissions below the Creators tab, then Add partnership. "Once the partner accepts your request, account-level permissions will be established and you can create partnership ads with this partner without additional permission requests." While a request waits, Get link sends an Instagram creator straight to it.
One permission sits outside both: "Partnership ads are not the same as organic branded content." Letting a creator tag you with the paid partnership label on an organic post is a separate grant.
Do partnership ad codes expire?
Meta gives a code no lifetime in days. It works until the creator turns it off, and turning it off doesn't stop ads already made from it: "You can stop a code from being used to create any new ads by turning the toggle off. Any active ads using the code will continue running." Instagram's page Stop an advertiser from running partnership ads has the two steps. Turning off "Get partnership ad code" means "The partnership ad code can no longer be used to create new partnership ads from the post, story or reel." Stopping a live ad is separate: Professional dashboard, then Partnership ads, then Active ads, then the ad, then Options and Stop.
The 60 days on Meta's partnership ads page is about something else. Suggested Posts in Ads Manager "will include approved branded content from the last 60 days that do not have a blocking eligibility issue."
The time limit on using a creator's post belongs in the agreement. Meta's page About partnership ad permissions for advertisers says the permissions "control access in Meta's tools. They don't establish or replace separate terms between you and the creator or partner," and that "Separate agreements may define the scope, duration, exclusivity, compensation or other terms of the relationship." They also "don't set compensation or transfer ownership of content." So a 30-day usage window is enforced by the contract and the creator, not by the code: when it ends, the creator turns the code off and stops the live ads, and Meta asks advertisers to "review any affected ads before you run them again" after a permission changes. A paid creator also brings disclosure rules; the UGC ad entry has the FTC's wording.
How long does a Spark Ads code last?
7, 30, 60 or 365 days, chosen by the creator. TikTok's page How to create Spark Ads for Smart+ Campaigns in TikTok Ads Manager gives the creator's steps in the TikTok app, ending with: "From the chosen post's ad settings module, select the authorization duration (7, 30, 60, or 365 days)." A request sent from TikTok's Content Suite starts at the longest: "All Spark authorization requests are defaulted to 365 days for authorization period." About Spark Ads lists the choice as a feature: "Customize the duration of your authorization code to meet campaign needs and minimize costs."
So a 30-day code is one of four lengths. It covers an ad that ends within those 30 days and no longer, for a reason in the next section.
The creator's side, from TikTok's steps:
- Allow Authorized Posts in the TikTok app, under Settings and Privacy, then Privacy, or under Me, then Creator tools.
- On the post, tap the three dots, then Ad Settings, agree to the advertising terms and turn on the Ad authorization toggle.
- Generate the video code, pick the duration and tap Copy Code.
The advertiser's side: in TikTok Ads Manager, go to Tools, then Creative library, then Spark ads posts, then Apply for Authorization, paste the code and click Search. While building an ad, Add post does the same, and "You can batch authorize up to 20 video codes at a time. There is an authorization period for you to review beneath each post." A Duet or Stitch needs "video authorization codes from both creators featured in the videos."
What happens when a Spark Ads code expires?
TikTok's page About Spark Ads Code Error Notifications in TikTok Ads Manager lists what a code can return in Ads Manager. These are the ones about time and the code itself:
| Error | TikTok's message | What TikTok says to do |
|---|---|---|
4025 auth_code_expired | "Authorization expired." | "Contact the creator to extend the authorization." |
900010 calculate_intersection_time_error | "Authorization ends before the ad's end time." | "Contact the creator to adjust authorization." |
auth_code_not_found | "The code has been deleted." | "Contact the creator to generate a new code." |
4013 auth_code_format_error | "The post code is incorrect." | "Verify the code with the creator or generate a new one." |
not_public_video | "The post is not public." | "Ask the creator to change visibility to public." |
4027 story_video_not_supported | "Story videos can't be used for Spark Ads." | "Choose a different post." |
Two things follow. An expired authorization can be extended by the creator, which is TikTok's fix for 4025. And 900010 ties the code to your schedule: the authorization has to last past the ad's end time, so set the end date inside the window or ask for a longer one first.
TikTok's other rules for authorized posts:
- "A video code can only be deleted when all the ads this video is used in are deleted in TikTok Ads Manager."
- "Videos need to be un-authorized as a Spark Ad before it can be deleted from the organic account."
- "You cannot edit a post's caption after it's been authorized as an ad." A longer caption covers more of the frame, as TikTok's safe zone templates show.
- "Each TikTok Ads Manager account can support a maximum of 10,000 Spark Ads."
Spark Ads vs partnership ads
Both can run a creator's post as an ad under the creator's name, and both can start from a code the creator sends. They differ in how long that code lasts and in what ends it.
| Meta partnership ads | TikTok Spark Ads | |
|---|---|---|
| What the creator sends | A partnership ad code, from "Partnership label & ads" | A video code, from Ad settings |
| How long the code lasts | No end date from Meta | 7, 30, 60 or 365 days, set by the creator |
| How it ends | The creator turns the toggle off; live ads run until stopped | It expires; the creator can extend it |
| Route with no code per post | Account-level permission, requested in Creator Marketing Hub | A TikTok account linked through Business Center |
| Name on the ad | Both accounts, the first only, or dynamic identity (on by default) | The post's own display name, which "cannot be edited" |
| Engagement | "signals from both accounts" feed ranking | Views, comments, shares, likes and follows go to the original post |
| Longest video | 15 minutes in Reels, 60 seconds in Stories | 10 minutes |
| Stated limits | A code works for up to 2 partners at a time | 20 codes per batch; 10,000 Spark Ads per ad account |
On TikTok, "all views, comments, shares, likes, and follows gained from boosting the video during the promotion are attributed to your organic posts," per About Spark Ads. TikTok also leaves Spark Ads out of its AI-generated content toggle, so any AI label on one comes from the creator's post; the AI avatar ads post has TikTok's wording, and the rules on using a real person's face or voice.
Partnership ads vs whitelisting
Neither Meta's partnership ad pages nor TikTok's Spark Ads pages use the word "whitelisting." What it usually means, a brand running ads through a creator's account, matches Meta's account-level permission, which lets an advertiser "Create partnership ads, other ad types and marketing messages from a partner's handle without pre-existing content." On TikTok it is a creator account linked through Business Center, which TikTok's Smart+ page lists as "authorized accounts (authorized through Business Center)" beside "Posts (authorized via video codes)." Linking one takes the creator's approval: "The user with access to the TikTok account must be ready to scan a QR code to approve the linkage." A code for a single post is the narrower version on both platforms.
Before you ask a creator for a code
- Write the usage window, the fee and the end date into the agreement. Meta's permission holds none of them, and TikTok's code holds only the end date.
- On TikTok, ask for a code that outlasts the ad's end date, or setup fails with 900010. Content Suite requests start at 365 days.
- On Instagram, check the post first. A reel with music from Instagram's library, a product tag or a camera effect isn't eligible, and neither is a reel from before October 15, 2021.
- For ongoing work, ask for account-level permission on Meta or a Business Center link on TikTok, so each new post doesn't need its own code.
- When the deal ends on Meta, the creator turns the code off and stops the live ads. On TikTok, the period shown under each authorized post in Ads Manager says when it runs out.
Sources
- About Partnership Ads on Instagram and Facebook — Meta Business Help Center (accessed October 31, 2026)
- How to Create a Partnership Ad: Error #2446986 — Meta Business Help Center (accessed October 31, 2026)
- About Partnership Ad Permissions — Meta Business Help Center (accessed October 31, 2026)
- About partnership ad permissions for advertisers — Meta Business Help Center (accessed October 31, 2026)
- Manage account-level permissions for partnership ads in Partnership Ads Hub — Meta Business Help Center (accessed October 31, 2026)
- Create a partnership ad code to share with partners — Instagram Help Center (accessed October 31, 2026)
- Eligible formats for partnership ads — Instagram Help Center (accessed October 31, 2026)
- Supported objectives and placements for partnership ads — Instagram Help Center (accessed October 31, 2026)
- Eligibility requirements for partnership ads and branded content on Instagram and Facebook — Instagram Help Center (accessed October 31, 2026)
- Stop an advertiser from running partnership ads from your Facebook or Instagram account — Instagram Help Center (accessed October 31, 2026)
- Partnership Ads Creation — Meta for Developers (accessed October 31, 2026)
- About Spark Ads — TikTok Business Help Center, last updated June 2026 (accessed October 31, 2026)
- How to create Spark Ads for Manual and Search Campaigns in TikTok Ads Manager — TikTok Business Help Center, last updated June 2026 (accessed October 31, 2026)
- How to create Spark Ads for Smart+ Campaigns in TikTok Ads Manager — TikTok Business Help Center, last updated October 2025 (accessed October 31, 2026)
- About Spark Ads Code Error Notifications in TikTok Ads Manager — TikTok Business Help Center, last updated July 2025 (accessed October 31, 2026)
- How to use Content Suite to create and launch Spark Ads — TikTok Business Help Center, last updated December 2025 (accessed October 31, 2026)
- How to link an existing TikTok account in Business Center for ad delivery — TikTok Business Help Center, last updated April 2026 (accessed October 31, 2026)
Meta and TikTok revise these pages without notice, and TikTok's list of code lengths is on a page last updated in October 2025, so check the source before planning a flight around it.
Terrads makes video ads where a person you make once talks to camera for your brand, so you can test more scripts alongside the posts your creators make.