Signals to ad platforms don't arrive
Area: Conversions · Updated: 4 Nov 2026 · Auf Deutsch · All articles
Symptoms
- Under Settings › Signals to ad platforms „Sent (30 d)“ is 0 everywhere.
- Custom events such as „HotVisitor“ or „QuizStarted“ don't show up in Meta Events Manager.
- Google Ads lacks the actions „X3 · Heißer Besuch“ etc., or they have no conversions.
- The table says „platform not ready“ for a platform.
Cause
- Signals are „Off“ or „Dry run“. In a dry run X3 only collects, nothing is sent.
- „Only visits with consent“ is on and most visits gave no consent.
- Reporting to the platform is not set up or switched off (Settings › Reporting).
- Google Ads reports through the CSV feed and the ad account is not connected: X3 can only create the actions through the connection.
- Google only gets visits with a Google click (gclid, gbraid, wbraid). Visits from other channels don't go to Google.
- A freshly created Google action accepts no uploads for up to 6 hours. X3 retries by itself.
How to fix it
1. Check mode and platforms
- In the dashboard: Settings › Signals to ad platforms
- With Claude (MCP):
ad_signals_list{"project":"my-project"}
settings.mode must be live. providers says per platform whether it is available; with reason: no_connection connect the ad account under Settings › Ad accounts & budget, with not_set_up or off set up reporting under Settings › Reporting.
2. Run the preview
- In the dashboard: Settings › Signals to ad platforms › Preview 30 days
- With Claude (MCP):
ad_signals_preview{"project":"my-project","days":30}
Shows per signal and platform how many signals the last 30 days would have produced, with consent and click ids applied. If everything is 0, consent or missing click ids are the reason, not the platform.
3. Let X3 create the actions and go live
- In the dashboard: Settings › Signals to ad platforms › Live › Save
- With Claude (MCP):
ad_signals_update{"project":"my-project","mode":"live","dry_run":true}
With dry_run Google only validates (validateOnly) and X3 stores nothing. Without it X3 creates a secondary Google action „X3 · …“ per enabled signal (observation only, changes no bidding) and switches signals live.
How to tell it worked
- „Sent (30 d)“ rises in the table and „Last sent“ shows a time.
- Meta Events Manager shows the custom events (e.g. „HotVisitor“) with source server.
- Google Ads › Goals › Conversions lists the X3 actions as secondary with conversions.
Related articles
- Google Ads connected, but closings don't arrive
- A purchase or lead was not reported to Meta or Google
Signals are not conversions: they never count as a lead in X3 and don't change what your campaigns optimise for. Meta gets them as custom events, Google Ads as secondary actions. A signal only becomes an optimisation goal when you deliberately save it as primary or build a custom conversion from it in Meta. Always judge such a test by cost per real lead.