Ad platform
A Meta lead that closes six weeks later never makes it back to Meta on its own. The browser is gone, the pixel event fired at form submit and nothing after that, and your ad account keeps counting form fills as if they were all equal. Attribi holds the link between the visitor, the lead, and the deal, then sends the outcome to Meta through the Conversions API from our servers, with the deal value and currency attached once it closes.
No credit card required · 5-minute setup
Form fills and qualified leads arrive as Meta Lead events, closed-won deals arrive as Purchase events carrying the deal value and currency. Attribi sets the event names, so there is no stage mapping for you to configure or get wrong.
When a lead originated in a Meta Instant Form, its Meta lead ID travels with every event Attribi sends, which is the identifier Meta looks for in a CRM-sourced conversion rather than a browser click ID.
Email and phone are SHA-256 hashed before they leave Attribi and sent with every event, so a person can still be matched when no fbclid survived the trip from the ad to your CRM.
Cost, clicks, and impressions come back from your Meta ad account every day, so the revenue your CRM confirmed is compared against what Meta actually charged you.
fbclid is recorded the moment a visitor lands and stays attached to that visitor, so a deal that closes months later still points at the ad that started it.
Sign in with Facebook from the Connections page and choose the ad account and pixel you want events sent to. Agencies running several accounts connect each one; Attribi keeps their events and spend apart.
Meta has no API for minting a named conversion, so Attribi activates a stage by sending one synthetic event with a hashed dummy email. Meta registers the standard event on its side and the stage is live. Nothing has to be built in Events Manager by hand.
From then on your CRM is the trigger. Marking a lead qualified or a deal won sends the matching Meta event within the same run, with revenue attached on close. No CSV exports and no monthly offline-event upload.
Step-by-step walkthrough: Salesforce to Meta Offline Conversions: Send Every Stage Through the Conversions API, Not Just the Win · Salesforce to Meta Conversions Not Showing? Troubleshoot Delivery, Matching and Attribution
Key points
Connect both to Attribi. Sign in with Facebook and choose the ad account and pixel, activate the funnel stages, then authorize your CRM. From then on, marking a lead qualified or a deal won in the CRM sends the matching event to Meta through the Conversions API, with revenue attached when the deal closes.
The steps below are the whole job. The Meta side is the same whichever CRM you use.
The Meta Conversions API is the server-to-server channel for sending events to Meta without a browser. Using it for CRM means sending events that happen in your sales process, such as a lead being qualified or a deal being won, so Meta can connect them to the ad or the lead form that started them.
The pixel in the browser fires at form submit and then loses sight of the person. Everything that decides whether the lead was worth paying for happens later, inside the CRM.
The Conversions API is how that later outcome gets back. It needs an identifier Meta can match and an event Meta understands, sent from a server that still knows who the person was.
HubSpot, Salesforce, Zoho, Pipedrive, Freshsales, LeadSquared and Odoo. Attribi reads deals from each one daily and sends qualified and closed-won outcomes to Meta. Shopify paid orders are supported as Purchase events with the real order total.
Only the CRM step differs between them, mainly in how you tell Attribi which stage means qualified.
Uploads to ad platforms and CRM revenue connections are paid plan features. The pricing page lists what each plan includes.
Example: how the HubSpot connection worksAttribi sends every identifier it holds. For leads from a Meta Instant Form that is the Meta lead ID. For website leads it is the fbclid click ID recorded when the visitor landed. In both cases SHA-256 hashed email and phone are sent as well, and they are the fallback when neither ID exists.
Instant Form leads are the easy case, because the lead ID is issued by Meta and points at one specific form submission.
Website leads depend on the click ID surviving from the ad to the CRM. Attribi stores it against the visitor rather than relying on a CRM field, so it is still there when the deal closes. A lead entered by hand with no click history still uploads on hashed email and phone, at a lower match rate.
A manual offline event upload suits a one-off analysis. A custom Conversions API build suits a team that runs Meta only and has engineers to maintain it. A connector suits everyone else, because the recurring cost of this work is upkeep: stage changes, hashing rules, retries and expired connections.
Attribi is a connector that also covers the other platforms. The CRM connection that feeds Meta feeds Google Ads, LinkedIn Ads, Microsoft Ads, TikTok Ads and Snapchat Ads too, each in its own event format.
A worked example: Salesforce closed-won deals to Meta AdsThree worth knowing. The stage to event mapping is fixed, so event names cannot be customized. Meta has no API for creating a named conversion, so stages are activated by sending a first event instead. And matching on hashed email and phone alone gives lower match rates than a click ID or a lead ID.
None of these stop outcomes reaching Meta. They shape what you should expect to see in Events Manager on day one.
Stages Attribi supports for Meta Ads.
CRM
HubSpot revenue attribution for LinkedIn, Google and Meta ads: campaign data is written onto the contact, and closed deal revenue is read back out for upload.
Ad platform
Google Ads offline conversion tracking: send qualified leads and closed-won revenue from your CRM, so your account sees CRM-verified outcomes, not just form fills.
Ad platform
Send offline conversions from your CRM to the TikTok Events API: form fills, qualified leads, and closed deals with revenue, matched by ttclid or hashed email.
No. Attribi is the Conversions API implementation. You connect Meta and your CRM from the Connections page, and Attribi sends the server-side events, including the hashing of email and phone, the event payload, and the deduplication identifier. There is no code to write and nothing to deploy on your website.
Form fills and qualified leads are sent as the standard Lead event, with a content category that separates the qualified ones, and closed-won deals are sent as Purchase with the deal value and currency. The mapping is fixed by Attribi rather than configured per account, so every Attribi customer sends the same standard events Meta already understands.
Yes. Leads captured through a Meta Instant Form carry a Meta-issued lead ID, and Attribi sends that ID with every event for the lead, alongside hashed email and phone. That is what lets Meta tie a conversion your CRM reported back to the specific form submission it came from, without a click ID ever existing.
Meta publishes that a proper Conversions API implementation lowers cost per quality lead by up to 24 percent. That number is Meta’s, about Meta’s own product, and Attribi neither measures nor guarantees it. What Attribi removes is the reason most teams never get there: the two to three week engineering build that a compliant server-side implementation normally requires.
Yes, daily. Cost, clicks, and impressions are pulled from your Meta ad account and stored per campaign and day, so return on ad spend is calculated from real Meta billing data rather than a figure typed into a spreadsheet.
Yes for qualified and closed-won outcomes. Without the Attribi script no fbclid is captured from the landing page, so matching relies on the hashed email and phone held in your CRM. Adding the script is what recovers the click ID and the visit history behind each lead.
Updated
Sign up and connect it from the Connections page.
Start FreeNo credit card · Free up to 500 visitors a month