Vibiz

Meta conversions

Send purchases to Meta server side through Vibiz, without a Conversions API token.

Your site only talks to Vibiz. When Meta forwarding is on, Vibiz sends your conversions to your Meta pixel from its own servers, through the Meta account you connected to Vibiz. There is no Conversions API token to generate in Events Manager, and nothing on your server talks to Meta.

What is sent

Only conversions, each as Meta's standard event:

  • purchase as Purchase
  • subscribe as Subscribe
  • start_trial as StartTrial
  • donate as Donate
  • refund as a custom event

The rest stays in Vibiz. page_view, lead, sign_up, begin_checkout, add_to_cart and every other event are stored and reported, but never sent to Meta. A campaign that optimises for leads or registrations still needs the Meta pixel on the page for those events.

It does not matter which side sends a conversion. An event from the browser tag and one from @vibiz/analytics/node are forwarded the same way, a few seconds after they arrive.

What is held back

Meta refuses events older than 7 days, so older ones are skipped. Only a buyer's first purchase is sent unless you turn on repeat purchases, and an event with nothing Meta can match a person on is not sent.

Which pixel

Conversions go to the pixel selected for the Meta ad account you launch ads from, the same one your ads use, so the ads and the conversions they produced land on one dataset. You choose it in Intelligence, or an agent sets it with vibiz_analytics_setup_update. Until a pixel is selected nothing is sent.

Turn it on

Forwarding is off until you turn it on, because a page that still fires its own Meta pixel would report every purchase twice. When the tag has seen that pixel on the page, Vibiz refuses to turn forwarding on until you remove it, share event ids as described below, or confirm.

To try it first, enter a test event code from Events Manager > Test Events. While it is set, conversions go to that view and not to your dataset. An event spent on a test is never sent again for real.

Running the Meta pixel as well

Meta keeps one copy of an event when both copies carry the same event id. Vibiz sends, for each conversion:

  • the id you passed, when you passed one
  • otherwise an id derived from order_id, which the browser and server copies of one order share, so they never double count each other
  • otherwise a random id

The id derived from order_id cannot be computed on your side. So when the page also fires fbq for a purchase, choose an id and give it to both:

const eventId = `purchase-${order.id}`;
track('purchase', { value: 49.9, currency: 'EUR', order_id: order.id }, { eventId });
fbq('track', 'Purchase', { value: 49.9, currency: 'EUR' }, { eventID: eventId });

The third argument of track needs @vibiz/analytics 0.6.0 or the script tag. On the server, pass the same value as eventId.

PageView needs nothing: Vibiz never sends it, so the pixel's page views are the only ones Meta receives.

With an agent

On the Vibiz MCP, vibiz_analytics_setup returns the org id, the install snippets, the allowed origins, the latest events per origin, and where Meta conversions go. vibiz_analytics_setup_update allows origins, selects the pixel and turns forwarding on, so the whole setup runs without opening Events Manager.

On this page