Reconcile our numbers with yours, step by step
Export our conversions and join them to your records on action_id: the one in our reports is the one on your postbacks. Then work down this list for the rows that differ. The reasons behind each gap are in Why our numbers and yours differ.
On this page
| What you see | What it means | What to do |
|---|---|---|
| A past day’s total dropped after you closed it | A reversal came in later, dated on the conversion’s day | Count reversals by conversion date |
| Totals differ near the start or end of a day | We count days in UTC | Compare in UTC, or row by row |
| You have more conversions than we do | You counted test postbacks, or the same step twice | Skip test=true; dedupe on action_id and status |
| We show reversals you don’t have | Your dedupe dropped them | Dedupe on action_id and status together |
| We show conversions your server never got | Their delivery failed or found no URL | Filter Flight Recorder by Delivery |
| Your Hosted Offerwall earnings are too high | You added revenue and payout together | Use revenue only |
| Advertisers: your attribution tool counts more installs than we charged | We charge only events matched to our taps | Compare against Event logs |
Publishers: open Conversions, set From and To, choose Apply, then Download CSV. Each row has its Action ID, Sub ID, status, payout and time, and reversed rows say when the reversal came in. Networks: look up each action_id in Reporting, then Flight Recorder.
Reversals arrived after you closed the day
How to confirm: Publishers: in Conversions, rows read
reversedwith Reversed on a later date than their Time. Networks: the conversion in Flight Recorder shows Reversed because.Fix: Reconcile by conversion date, not arrival date: a reversal is dated on its conversion’s day. The conversions list shows it at once; daily totals pick up a reversal of an earlier day at our next rebuild, a few hours later (we rebuild those days four times a day).
You compare in a different time zone
How to confirm: The gap sits at the edges of a day, and the totals over a whole week agree.
Fix: Compare in UTC, or compare single rows by
action_id.You counted test postbacks
How to confirm: Your records have rows with
test=true, or sample IDs you don’t find in our export.Fix: Skip every row with
test=true.You dedupe on action_id alone
How to confirm: We show a reversal for an action ID that your records show only as credited.
Fix: Dedupe on
action_idandstatustogether, or every reversal looks like a repeat and gets dropped.Some postbacks never reached you
How to confirm: In Reporting, then Flight Recorder, publishers set Delivery to
failedorskipped_no_url; networks choose a row and read Network Delivery Response. These conversions count on our side and never reached yours.Fix: Fix the cause (Postback not firing or never arrives). Publishers: send us the action IDs, and our team can send failed credits from the Offer API and links again; a credit that never reached you gets no reversal postback either.
You read the wrong money field
How to confirm: Your Hosted Offerwall earnings are about the player’s reward, or the two added together.
Fix: Use
revenuewhenever it’s present, and never add the two. Which field holds what: the usual causes.Rejected users are in your numbers
How to confirm: Publishers: your own count includes users who show as
rejectedin Conversions.Fix: Leave them out of yours. A rejected conversion pays $0 and isn’t counted in our totals.
Advertisers: your attribution tool counts every install
How to confirm: Your attribution tool shows more installs or events than you were charged for. Attribution shows Installs from elsewhere: first opens with no tap of ours behind them.
Fix: Compare your records with Event logs by
eventId. We charge only live events with a click ID that matches a tap we recorded; events that come backcampaign_paused,insufficient_balanceorrejectedaren’t charged either. More on attribution tools.
- The email you sign in with, and your role.
- The date range you compared, and the time zone you used.
- Your totals and ours, and the offer IDs involved.
- Three to five action IDs (or event IDs) that differ, and what each side shows for them.
- Your export, if you can share it.