GoodInbound

Send Real Leads to TikTok Ads

GoodInbound sends every real lead to TikTok as a SubmitForm event through the Events API. Spam, bots, and leads you reject are never sent, so campaigns that optimize for form submissions find more people like your buyers. Each event carries the submission ID as its event_id, so TikTok counts a lead once even when your browser pixel reports it too.

TikTok Ads connected in GoodInbound and sending real leads

Before you start#

  • A TikTok pixel your campaigns optimize for, and access to it in TikTok Ads Manager.
  • Click IDs are captured. The Lead Screen script is on the pages your ads land on, or your ads point to GoodInbound hosted forms. It records the ttclid TikTok adds to ad clicks.

1. Get your pixel code and an access token#

  1. In TikTok Ads Manager, open Tools → Events and choose Web events.
  2. Select your pixel. Its code, starting with C, is under the pixel's name. Copy it.
  3. Open the pixel's Settings tab. Under Events API, click Generate access token and copy it.

2. Connect TikTok in GoodInbound#

  1. Open Settings → Integrations. In the Ad platforms card, click Connect next to TikTok Ads.
  2. Paste the Pixel code and the Events API access token.
  3. Click Connect.

The Connect TikTok Ads dialog with the pixel code and Events API access token

The token is stored encrypted and never shown again. The Real leads to TikTok workflow is switched on, and real leads start arriving in Events Manager as server events.

3. Send a test lead#

  1. In TikTok Events Manager, open the pixel's Test events tab and copy the test event code.
  2. In GoodInbound, click Send a test lead on the TikTok row, paste the code, and click Send test lead.

The test event shows up under Test events within a minute and never counts as a conversion. If TikTok refuses it, its message is shown in the dialog.

4. Optimize for real leads#

  • Set your campaigns' optimization event to Submit form on this pixel.
  • If your browser pixel fires SubmitForm on every form submit, stop it, or fire it from GoodInbound's accepted-lead event with the same ID so TikTok keeps one:
document.addEventListener("leadscreen:lead", function (event) {
  ttq.track("SubmitForm", {}, { event_id: event.detail.event_id });
});

What GoodInbound sends#

Field Value
event SubmitForm
event_id The submission ID
event_time When the submission became a lead
page.url The page the form was on
user ttclid, SHA-256 hashes of the email and of the phone number in E.164 format, the visitor's IP and user agent, and a hashed external_id

Phone numbers are only sent when they include a country code, such as +1 555 010 0199.

When a lead changes#

A lead is sent as soon as it's accepted. TikTok can't retract an event, so a lead you later relabel as spam stays counted in TikTok. Leads labelled review wait until someone relabels them as lead.

Troubleshooting#

The row shows a failed send. The message is TikTok's own. An invalid or expired token is the usual cause: generate a new one and click Update on the TikTok row.

No events in Events Manager. Send a test lead first. If that works, check that the Lead Screen script runs on the landing page and that submissions are reaching the lead label in your inbox.