Personyze can report what a visitor did straight to Meta, TikTok and
Google — from its own servers, over each platform’s server-side API. The platform then
builds an audience from those events, and you advertise to it.
Conversions API and TikTok’s Events API take a token you generate yourself in Events Manager. Nothing is uploaded,
no customer file leaves your account, and there is no approval queue to sit in.
Connecting each platform
All three are configured under Settings → Integrations, and all three are destinations on the
Send Event to Analytics action.
| Platform | What you need | Where it comes from |
|---|---|---|
| Meta (Conversions API) | Pixel (dataset) ID and an access token | Meta Events Manager → your dataset → Settings |
| TikTok (Events API) | Pixel code and an access token | TikTok Events Manager → your pixel |
| A GA4 Measurement ID (and API secret) | Google Analytics → Admin → Data streams |
GA4; you build a GA4 audience on it; that audience reaches Google Ads over the GA4 ↔ Google Ads
link your account already has. That is the whole route.
Ad platform matching — the switch that decides your reach
An ad platform can only act on people it recognises. Matching on an email address alone reaches only the
visitors who ever gave you one — on a real account we measured that at 461 people out of 1,356, so
roughly a third. Everyone else is invisible to the platform unless you send something else it knows them by.
Ad platform matching is one switch on the Meta, TikTok and Google Analytics cards. It captures the
browser cookies and click identifiers each platform recognises people by, and needs nothing added to your site.
| Platform | What it captures | Why |
|---|---|---|
| Meta | Meta browser ID (from the _fbp cookie) |
Written by the Meta pixel. This is the one that reaches visitors with no email address. |
Meta click ID, cookie (_fbc) |
Written by the pixel when somebody arrives from an ad. | |
Meta click ID, URL (fbclid) |
The same click, taken from the landing-page address — captured even where the Meta pixel is not installed. | |
| TikTok | TikTok browser ID (from the _ttp cookie) |
Written by the TikTok pixel. Reaches visitors with no email address. |
TikTok click ID (ttclid) |
Appended to the landing page when somebody taps a TikTok ad — the strongest signal TikTok has. | |
Google Analytics client ID (from the _ga cookie) |
Without it, a GA4 audience built from these events exports to Google Ads and matches nobody. |
visitor attributes filled by grab containers, and they are fiddly to build by hand — the switch creates each one
with the right type and the right target attribute. If a container already exists it is left alone rather than
duplicated, and one that exists but was switched off is simply re-activated.
page view. People already in your audiences are matched when they next return. Switch it on and give it a few days
before judging the numbers.
What each platform does with the events
- Meta — the events feed a website custom audience, and from that a
lookalike. Meta needs at least 100 people from one country in the source audience
before it will build one. - TikTok — the same shape: a custom audience from website activity, then a lookalike.
- Google — a GA4 audience, which reaches Google Ads. There is no lookalike on
Google. Similar Segments were removed in August 2023; the audience now feeds Smart Bidding and optimised
targeting instead, which is how Google expands reach.
Choosing the event name Meta and TikTok understand
Both platforms only optimise for — and only build dynamic ads from — their own standard event
names: ViewContent, AddToCart, Purchase, Lead and the
rest. An event called “Cart abandoners” is a perfectly good custom event and will never drive one.
So the action has a Meta event name and a TikTok event name menu. Pick the
standard name that matches what happened, and your own event name still goes to every other destination unchanged
— this only changes what those two platforms are told.
Sending a value
Event value and Currency are fields on the action. Without a value, Meta cannot
build a value-based lookalike and Google cannot bid on value — the event still arrives, it simply has
nothing to optimise towards. The value can be a number or any visitor column written as
${column_name}.
The currency must be a three-letter code such as USD. A bad code is the one thing Meta
rejects outright rather than accepting silently.
Troubleshooting
Almost every failure here answers with a success code, which is what makes them worth listing.
| Symptom | Almost always |
|---|---|
| The event never appears in Events Manager | The campaign was never published, or nobody has matched it yet. |
| The event appears but the audience stays tiny | Ad platform matching is off, so only the third of people with an email address are reaching the platform. |
| Meta will not let you build a lookalike | Fewer than 100 people from one country in the source audience. |
| “the recipient has no email” in the campaign log | Expected for anonymous visitors, and harmless once matching is on — they are matched on a cookie instead. |
| The GA4 audience exports to Google Ads and matches nobody | The _ga client id is not being captured. Switch on Ad platform matching on the Google Analytics card. |
| Meta rejects the event outright | The currency is not a three-letter code. |
Related
- Push a discovered audience to your ad platforms — the whole flow, end to end.
- Send Event to Analytics — the action all of this rides on, and its other nine destinations.
- Google Analytics integration
- Audience Discovery — where the audiences worth pushing come from.