Attribution accuracy
Every ad platform reports on its own performance, and each one counts a conversion the moment its pixel sees a form. Attribi rebuilds the same period from the journeys it recorded and the deals your CRM confirmed, then puts the two credit splits side by side. The Truth Gap is the revenue last-click assigns to your paid channels minus the revenue a time-weighted view assigns to them, per channel, in money rather than percentages.
No credit card required · 5-minute setup
Add up the conversions Google, Meta and LinkedIn each claim for the same month and the total is larger than the number of deals you actually signed. Each platform counts the click it can see, and none of them can see the other two. There is no shared denominator, so there is no honest way to compare them inside their own dashboards.
The channel that happened to be last before the form gets full credit, which flatters branded search and retargeting and starves whatever introduced the buyer weeks earlier. It is not a rounding error. On a long B2B cycle the first touch and the last touch are frequently different channels with different budgets.
A conversion in the ad platform means someone typed an email address. Revenue means someone signed. Between those two events sits your qualification process, and no pixel is present for it, so the platform reports the first event and calls it the result.
The tracker records each visit with its source, campaign and ad click ID, and keeps them attached to the same visitor across sessions and weeks. Attribi stores the journey, so a deal that took eleven touches and two months is still a journey rather than a single referrer.
When your CRM marks a deal qualified or won, Attribi attaches the outcome and the deal value to the journey that produced it. Credit is then denominated in the money your CRM confirmed, not in form submissions, which is what makes two different models comparable at all.
The attribution view scores the same period under five models, including last-click and a time-weighted model that spreads credit across the journey. The Truth Gap panel reports the difference for your paid channels: what last-click claimed, what the time-weighted view credits, and the gap between them in revenue.
First touch, last touch, linear, position-based and a time-weighted model, all computed over the same journeys so the comparison is like for like. You switch model and the channel table re-scores; nothing is re-collected and nothing is estimated from a sample.
The Truth Gap panel reports claimed revenue, credited revenue and the difference for your paid channels together, with the percentage. A percentage on its own tells you nothing about whether to act; a number in your currency does.
Each channel is labelled by where it does its work: introducer, closer, full funnel, or background. A channel that looks weak on last-click and strong on first touch is doing a job, and the label names that job instead of leaving you to infer it.
Attribi shows what share of your conversions had at least one touch recorded before the conversion itself. If coverage is low the models are working from thin journeys, and you should know that before you move budget on what they say.
The time-weighted model is included on paid plans only, and the Truth Gap is computed from it, so a free account sees the other four models and no gap figure. We would rather put that here than let you find it after signing up.
Planned, not live today. Listed so you can see what this does not do yet, before you sign up.
Not yet available. Today the time-weighted model applies one fixed decay curve to every account. Weighting derived per account from your own conversion paths is on the roadmap, tracked as Shapley and Markov weighting under advanced analytics, with no date committed.
Not yet available.
Closing the loop
Send qualified leads and closed-won revenue from your CRM to Google, Meta, LinkedIn, TikTok, Microsoft and Snapchat, automatically, with no spreadsheet uploads.
No script required
Run attribution with no script on your site. Attribi reads leads and revenue from your CRM and uploads the outcomes to your ad platforms.
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
Meta Conversions API for CRM: send qualified leads and closed-won revenue from your CRM to Meta server side, with hashed email, phone, and Instant Form lead IDs.
CRM
HubSpot ad attribution in both directions: campaign data is written onto the contact your reps already read, and closed deal revenue is pulled back out.
CRM
Salesforce offline conversion tracking: won Opportunities upload to your ad platforms as revenue, matched on email and phone, using your own stage names.
It is the difference between the revenue last-click attribution assigns to your paid channels and the revenue a time-weighted model assigns to the same channels over the same period. Attribi reports it as an amount and a percentage, per channel and in total. It exists because last-click gives everything to the final touch, which systematically over-credits whatever tends to be last.
Because each platform counts what its own pixel saw, and it counts a form fill rather than a deal. Two platforms that both touched the same buyer will both count that buyer. Attribi counts once, against the journey, and takes the outcome and the value from your CRM, so the total reconciles with the deals you actually signed.
Yes. The gap is a comparison between attribution models, and models only differ when a journey has more than one touch. A CRM-only setup gives Attribi a single synthetic touch per lead, and every model then returns the same answer. Attribi still uploads qualified and closed-won conversions in that setup, and that path is covered on the pixel-less attribution page.
No. It is computed from the time-weighted model, which is included on paid plans, so a free account sees first touch, last touch, linear and position-based models and no gap figure. Everything else on a free account, including conversion upload to your ad platforms, works normally.
Credit is spread across every touch in the journey and weighted by how close each touch was to the conversion, on a fixed decay curve, then normalised so one conversion distributes exactly its own value. It is deliberately simple and identical for every account, so two accounts can be reasoned about the same way. Weighting fitted to your own conversion paths is on the roadmap and is not live.
Updated
Connect your ad platforms and your CRM, and read the answer from your own account.
Start FreeNo credit card · Free forever up to 1,000 visitors