Syncing lifecycle changes with Meta when using website forms

Hi there,
I just want to ask for the community’s advice, because I’m having issues syncing lifecycle changes from Hubspot to Facebook ads when using forms on our website (have tried both Hubspot forms and Typeform, which we currently use).
Syncing lifecycle stages only works when using Facebook’s in-platform lead forms, which like many media buyers, we don’t want to use. We want to continue using lead generation forms on our website, but we really need to share data with Facebook about who is progressing through the funnel so Facebook starts targeting more qualified prospects with our ads.
Unlike Google Ads, which works fine with forms on our website, I just can’t believe there’s no way to easily sync this data with Facebook, so I’m interested to hear about anyone else’s experience. For reference, here was the recommendation of Hubspot support below - we don’t really want to use Zapier, however, due to the extra cost:

"From double checking internally, I’m seeing that to sync Lifecycle stage changes from Hubspot back to Facebook, the original lead must come from a Facebook Lead Ad using Facebook’s instant/in-platform form (as you’d mentioned).

Lifecycle syncing doesn’t work reliably for leads from regular HubSpot or website forms, only those collected via Facebook lead forms are supported for this functionality currently from what I’m seeing.

In terms of workarounds that I’m seeing, one would be to use Zapier and:

1. Set up a HubSpot workflow to update a contact property (e.g., when lifecycle stage changes to “SQL”).

Have Zapier listen for that property change.

Zapier then uses the Facebook Conversions API integration to send a corresponding conversion event to Facebook, including identifiers like email, phone, and (if available) Facebook Click ID (fbclid).

More here - HubSpot Facebook Conversions Integration - Quick Connect - Zapier

So that’s one suggested workaround that would be relatively popular as Zapier is widely used across the HS user base from my experience.

2. In terms of handling within the HS environment, you could look at using workflow web hooks:

In HubSpot, set up a workflow to trigger a webhook when a contact’s lifecycle stage changes.

Your webhook server/app receives the data, formats it per the Facebook Conversions API documentation (event_name, identifiers, event_time, etc.), and pushes it to Facebook."

Many thanks.

Thank you for posting your question @jxk

I found a community thread that can offer more context to specifically what you’re asking for: https://community.hubspot.com/t5/Ads/Can-Hubspot-conversion-events-be-used-to-optimize-Facebook-lead/m-p/828679

I also want to tag a few community experts to offer more ideas and insights: Hey there @Sweely @danmoyle @RubenBurdin I hope you’re having a great week! Any ideas you want to share with us? Thanks!

Victor

Hi @jxk ,

This is a really common pain point and honestly one of the more frustrating gaps in HubSpot’s native ad integrations. The reason it works with Google but not Facebook comes down to how each platform handles offline conversion tracking. Google is more flexible with matching, while Facebook’s Conversions API requires very specific event formatting and identifier matching that HubSpot only fully supports through their native lead form integration.

The webhook approach HubSpot support mentioned is probably your cleanest path if you want to avoid Zapier costs. You’d set up a workflow that triggers when lifecycle stage changes, sends a webhook to a simple endpoint (could be a serverless function on AWS Lambda or similar), and that endpoint formats and pushes the event to Facebook’s Conversions API. Its a bit of setup but once running its reliable and has no per task fees.

One thing that helps with the matching quality on Facebook’s side is making sure you’re capturing and storing the fbclid parameter when leads come in from Facebook ads. If you can pass that along with the conversion event, your match rates will be significantly better than relying on email alone.

If you want to avoid building custom webhook handlers, tools like Stacksync can help sync your HubSpot lifecycle data to a database in real time, and from there you have more flexibility to push events wherever you need them. Still requires that last mile to Facebook but it simplifies the data pipeline piece. Note: This response was written based on my own experience and lightly reformatted with AI for clarity.

Happy to share more details on the webhook setup if thats helpful.

Thanks Victor/Ruben - that’s really interesting to learn and thanks for your advice.

Ruben - if you could share any more info on webhook setup that would be much appreciated.