Refunds and cancelled sales in offline conversion tracking: can you take a conversion back?

RefundsCancelled and lost
Net revenueSimple policy

Short answer: on Meta and TikTok, not through DataCops. A refunded sale stays counted. This page explains what that means, what is never sent, and how to report honestly so finance and marketing agree on the numbers.

Setup in 5 minutes
No credit card
One lead from a Meta ad
From form fill to won deal in HighLevel
With DataCops
Form fillSent to Meta
Booked callSent to Meta
Showed upSent to Meta
Deal wonSent with its value
Matched to the original ad click by email

Trusted by agencies and brands running paid media

AffilinoBigfishClever DigitalKeetraxLegendListingLogicNumeroStormZealdBurst Digital

Why refunds are a reporting problem, not a tracking failure

It is easy to read a gap between the ad platform and your accounts as proof that offline conversion tracking is broken. Usually it is not. The platform was told a sale happened, and it was true when it was sent. The refund came later, in a system the platform cannot see.

The same is true of cancelled and lost deals. They are real, but they are the parts of the story that never reach the ad platform from HighLevel. What arrives is the positive path: a lead, a booking, a show-up, a win, a payment.

Seen that way, the fix is not more tracking. It is agreeing what each number means, and writing that down. Marketing owns the click-to-customer signal. Finance owns the money kept. Both are useful, and neither should be forced to match the other.

Can you take a conversion back?

The plain answer: through DataCops, on Meta and on TikTok, no. Once a sale is sent and counted there, a later refund does not remove it. DataCops does not send refunds to Meta or TikTok.

That is a real limit and we would rather you know it now. It does not make offline conversions pointless, because a refund rate of a few percent does not undo the value of teaching Meta, Google Ads, TikTok and LinkedIn which clicks became customers. It does mean you should read the numbers with care. The wider picture is on our offline conversions page.

What is never sent

From HighLevel, the stages sent are lead, booked, showed, won with value, and paid. Cancelled, no-show and lost are never sent.

That helps in one way. A cancelled booking or a lost deal is not turned into a conversion, so you are not counting things that did not happen. It does not help in the other: it does not send a negative signal to the platform either. The platform is never told a lead went cold. It only hears the good news.

Send a later stage

The most useful lever you have is when you send. If refunds usually come after a payment, do not count the signature as the win. Send the paid stage, or a stage that you only reach once the refund window has passed.

The trade-off is speed. A later stage means fewer events, and each arrives later, so the platform learns a bit slower. For businesses with a heavy refund rate, that is usually worth it. Keep the platforms' own time limits in mind. Meta rejects events sent more than 7 days after they happened, and Google Ads ignores uploads more than 90 days after the click.

Judge platform revenue against net revenue

Ad platform reports are gross. They count what they were told. Your accounts are net of refunds. Put both side by side, and never treat one as a mistake in the other.

A useful habit: keep one line in your monthly report called refunded revenue, taken from your accounts, and show platform revenue minus that figure next to the platform number. Then everyone can see the gap and where it comes from.

A made-up example

This is an example, not a real result. Say you sent 100 won sales at 500 each, so the platform shows 50,000. Later, 12 of those are refunded. Your accounts show 88 sales, or 44,000 net.

The platform still shows 50,000. Its return on ad spend looks about 13.6 percent higher than the real one. Knowing that, you can read the platform number as a ceiling, not a fact, and plan budget against the net figure.

A simple refund policy for reporting

Write this down once so nobody argues about it monthly.

  • Define the counted stage. Decide which stage is a sale for reporting, ideally one reached after the refund window.
  • Keep refunds in your accounts. The source of truth for money is finance, not an ad platform.
  • Report both figures. Platform revenue and net revenue, side by side, with the difference labelled.
  • Review the refund rate quarterly. If it climbs, move the counted stage later.
  • Record the rule. One shared page, so a new hire reads the same thing.

How to talk to finance

Finance and marketing often fight over which revenue is right. Both are, for different jobs. Marketing needs a signal fast enough to steer ads. Finance needs money that will not be reversed.

Say it in one sentence: the ad platform tells us which clicks became buyers, your accounts tell us what we kept, and we show both. Offer the refunded revenue line. Agree the counted stage together. That turns an argument into a rule.

Honest note

What DataCops does and does not do here

Does not reverse refunds on Meta or TikTok

A refunded sale stays counted there.

Never sends cancelled, no-show or lost

From HighLevel, those stages are held back.

Sends later stages like paid

Lead, booked, showed, won with value, and paid, as your CRM reports them.

Counts the same order once

Send an order ID through the webhook and a repeat is counted once.

Send the right stage from day one

About 5 minutes per site. Agencies: about 15 minutes per client.

  1. Step 1
    code

    Add the DataCops script
    One script and one DNS record, so every ad click is kept on your own domain for up to 90 days.

  2. Step 2
    ads_click

    Connect your ad platforms
    Meta, Google Ads, TikTok and LinkedIn by one-click sign-in.

  3. Step 3
    hub

    Connect where your sales happen
    HighLevel natively, or any other CRM through your private webhook. Pick the stages to send.

FAQ

Not through DataCops. DataCops does not reverse refunds on Meta or TikTok, so a refunded sale stays counted there. Judge platform revenue against your net revenue instead.

Count the sales that stick

Send the stage you trust to Meta, Google Ads, TikTok and LinkedIn, logged per send.

Setup in 5 minutes. No credit card.

Live traffic quality

Updated just now

Visits · last 24h

487
Real users
35873.5%
Bots · auto-filtered
12926.5%

Without filtering, 26.5% of your reported traffic is bot noise inflating dashboards and draining ad spend.

Don't trust your analytics!

Make confident, data-driven decisions withactionable ad spend insights.

Setup in 2 minutes
No credit card