TikTok Ads
Launch TikTok ads at the same speed as Meta.
Connect your TikTok advertiser, pick your identity, and bulk-launch standard, Smart+, or Spark ads from the same Google Sheet you use for Meta.
TikTok Ads Manager is faster than Meta in a lot of ways — but launching dozens of ad variants is still a click-heavy job. Bulk Ad Upload uses the TikTok Marketing API to push ads in batch, with full support for the formats agencies actually use: standard in-feed ads, Smart+ ads, and Spark (BC_AUTH) ads with the creator's identity attached.
The TikTok workflow in five steps.
- 1
Connect TikTok
OAuth into your TikTok Business Center. We store the access token, refresh token, and expiry per workspace, and refresh automatically before launches.
- 2
Pick the advertiser
Browse every advertiser account you have access to under the connected TikTok For Business account. Select one as the workspace target.
- 3
Choose your identity
Pick a Customized User identity (your brand) or an authorised creator identity (BC_AUTH_TT for Spark ads). The identity is attached to every ad created.
- 4
Compose ads and pick an ad group
Same sheet model as Meta — but TikTok cares most about the 9:16 column. Each row gets a target ad group; we detect Smart+ vs standard automatically and route to the right TikTok endpoint.
- 5
Launch
Six concurrent ad creations at a time. We upload videos, wait for processing, fetch covers, and create ads via /ad/create or /smart_plus/ad/create depending on the campaign type.
What sets TikTok bulk launches apart.
Smart+ detection
TikTok's campaign_type field misreports Upgraded Smart+ campaigns as REGULAR. We catch the resulting "Upgraded Smart Plus" error and retry on the right endpoint automatically — no more silent failures.
Spark ad support (BC_AUTH)
For creator-content campaigns, we send identity_authorized_bc_id alongside identity_id, so ads run as the creator while spend goes from your account.
ACO toggle
Per-launch toggle to disable Automatic Creative Optimisation. Default off — when you've crafted exact ad text, you don't want TikTok mutating it.
UTM auto-injection
Optional UTM params (source, medium, campaign, id) appended to every landing page URL at launch time. Defaults to TikTok placeholders TikTok itself substitutes at click time.
Search campaign awareness
Search campaigns reject identity fields. We detect the campaign type and omit the identity payload only where TikTok requires it.
Video ID reuse
Once a video is uploaded to your TikTok library, the ID gets cached on the ad row. Re-using it across multiple ads doesn't cause re-uploads.
Smart+ that actually launches.
Smart+ is TikTok\'s answer to Meta\'s Advantage+ — performance-optimised campaigns where TikTok handles most of the targeting and creative testing. The catch: the API endpoint for creating Smart+ ads is different from standard ads, and the campaign-type field doesn\'t always tell you which one to use.
We resolve the ad group type from the API on every launch, route to /smart_plus/ad/create/ when Smart+ is detected, and catch the explicit "Upgraded Smart Plus" rejection on the standard endpoint as a fallback for campaigns that lie about their type. Net result: Smart+ ads launch on the first try, every time.
Frequently asked questions
Same sheet, now also TikTok.
Connect TikTok in two clicks and launch your first batch alongside your Meta ads.