Cost per order is only useful when the numerator and denominator agree on what an order is. That sounds obvious until you mix assisted conversions, returns, and delayed postbacks into the same chart.
We use a short checklist: click ID continuity, last-mile visibility, refund windows, and a single source of truth for revenue. Anything less and the number is storytelling.
Start with one definition of an order
Finance, the ad platform, and the affiliate network will each hand you a different order count, and all three will be defensible. Pick one, write it down, and make every report inherit it. Ours reads: a paid transaction that has cleared payment authorisation and survived the refund window.
The four checks
Click ID continuity
The identifier attached at the click-out has to survive every redirect, subdomain change, app handoff, and consent prompt between the publisher and the thank-you page. Test it manually on mobile web, in-app browsers, and with tracking protection enabled.
Last-mile visibility
You need to know which placement produced the hop, not just which partner. Partner-level reporting hides the fact that two placements inside the same partner can differ by a factor of four. This is the same argument we make in the note on paying for the final five seconds.
Refund windows
An order that is refunded in week three was never an order. Match your reporting window to the category’s actual refund behaviour rather than to the reporting month.
A single source of revenue truth
Revenue should come from the order system, not the pixel. Pixels drop, retry, and double-fire. Ledger entries do not.

A worked example
Same month, same programme, four different ways of counting. Every column is technically correct.
| Source | Orders | Spend | Reported CPO |
|---|---|---|---|
| Ad platform pixel | 4,180 | $96,400 | $23.06 |
| Affiliate network | 3,760 | $96,400 | $25.64 |
| Order system, pre-refund | 3,690 | $96,400 | $26.12 |
| Order system, post-refund | 3,255 | $96,400 | $29.62 |
The spread between the first and last row is twenty-eight percent. That gap is where most “the channel stopped working” conversations actually come from.
Common ways the number lies
- Double counting — the same order credited to two partners because neither deduplicates.
- Window shopping — a lookback window long enough to claim credit for organic demand.
- Currency drift — spend booked at one rate, revenue at another.
- Test traffic — internal QA orders that never get filtered out.
- Missing cancellations — orders cancelled before dispatch but never reversed in reporting.
A reporting cadence that keeps everyone honest
- Daily: placement-level click-outs and provisional orders, for spotting breakage only.
- Weekly: partner-level reconciliation against the order system.
- Monthly: post-refund true-up, signed off by finance.
- Quarterly: re-test click ID continuity across devices and browsers.
Final takeaway
A cost per order holds up when the definition is written down, the click ID survives the journey, and finance recognises the revenue. Everything else is a dashboard. If you want the checklist applied to your programme, get in touch or read how publishers price the click-out.