Facebook Conversions API in Sparkforge Workflows

By Sparkforge Support Team ·Last reviewed May 3, 2026

Sparkforge Workflows can send Facebook Conversions API (CAPI) events without relying on the Facebook pixel. Use Form Submitted, Survey Submitted, Customer Booked Appointment, or Order Form Submission for funnel events; Facebook Lead Form Submission or Pipeline Stage Change for lead events.

The Facebook Conversions API (CAPI) action in Sparkforge Workflows sends conversion data to Facebook server-to-server, so you keep reporting accuracy when browser pixels are blocked or cookies are missing.

Supported triggers

Funnel events

  • Form Submitted
  • Survey Submitted
  • Customer Booked Appointment (use this, not the generic Appointment trigger)
  • Order Form Submission

Lead events

  • Facebook Lead Form Submission
  • Pipeline Stage Change (only when the contact originated from a Facebook lead form)

Required parameters

Event details

  • Event Source URL

Customer information

  • Client IP address — do not hash
  • Client user agent — do not hash
  • Email address
  • First name
  • Surname
  • Browser ID (fbp) cookie — do not hash
  • Click ID (fbc) cookie — do not hash

Custom values for Access Token and Pixel ID

Custom values are supported in both fields, which is useful when running multiple sub-accounts or pixels.

Why {{Order.Amount}} doesn't work with Order Form Submission

{{Order.Amount}} only resolves on the Order Submitted trigger because that fires after payment. Order Form Submission fires before payment, so the order amount isn't finalized yet.

No test events showing in Facebook Business Manager?

Open the Diagnostics tab and look for errors. A common cause is Facebook blocking your domain. Check Settings and scroll to Domains in Your Allow List to approve it.

Event deduplication

Funnels generate an eventId and store it with the contact's attribution data. The Conversion API action sends the same eventId to Meta, which uses it to deduplicate browser and server events automatically. No additional setup is needed.

Test Workflow button compatibility

Yes, the Test Workflow button works for testing Facebook conversion events.

Why does Facebook show "Custom Event" instead of "Lead" on tests?

This happens with test data only. Live conversions report correctly as "Lead."

Offline events with non-funnel triggers

Triggers like Call, Opportunity Status Change, or Tag added can fire CAPI events as long as the contact has an fbclid from a prior Facebook touchpoint. Sparkforge uses the latest available pixel data.

Example 1

A contact submits a Facebook lead form (first attribution: Paid Social). Later they convert to an opportunity and a status-change workflow fires CAPI — the fbclid from the original Facebook submission is reused.

Example 2

A contact arrives via Google Ads or organic (first attribution: Paid Search or Direct). Later they fill a Facebook form (latest attribution: Paid Social with fbclid). Subsequent CAPI events fire using that fbclid.

Frequently Asked Questions

Which workflow triggers support the Facebook Conversions API action?
Funnel events: Form Submitted, Survey Submitted, Customer Booked Appointment, Order Form Submission. Lead events: Facebook Lead Form Submission, and Pipeline Stage Change when the contact came from a Facebook lead form.
Why won't {{Order.Amount}} resolve with Order Form Submission?
Order Form Submission fires before payment is processed, so the amount isn't finalized. Use the Order Submitted trigger instead, which fires after payment.
Do I need to hash IP, user agent, or fbp/fbc cookies?
No. Send those values raw — do not hash IP, user agent, fbp cookie, or fbc cookie.
How does Sparkforge handle event deduplication with the Facebook pixel?
Funnels generate an eventId stored with the contact's attribution data. The same eventId is sent to Meta from both browser and server, and Meta dedupes automatically. No setup required.
Why does my test event show as 'Custom Event' instead of 'Lead'?
This only happens with test data. Live events will show the correct event type once a real conversion fires.

Was this article helpful?