Delivered ROAS
ROAS counted only on orders that actually reached the customer. It takes out cancellations and RTO, and it often reorders which campaigns look best.
For recent days where orders are still in transit, delivered revenue is estimated and trued up as shipments resolve.
What is delivered ROAS?
Standard ROAS counts every order the moment it's placed. In markets with a lot of cash on delivery, a share of those orders never get delivered, so the revenue behind that ROAS never arrives.
Delivered ROAS only counts revenue from orders that reached the customer. Because RTO varies so much by campaign, it doesn't just shrink every ROAS by the same amount. It changes which campaigns come out on top.
How it's calculated
You need three things joined on the same order: which ad gets credit for it, what it was worth, and whether it was delivered.
| Input | Source | What it gives us |
|---|---|---|
| spend | Meta, Google and other ad platforms | Denominator |
| attributed_orders | Your attribution model, not the platform's | Which orders belong to which campaign |
| order_value | Shopify | Revenue per order |
| delivery_status | Shipping partners, by order ID | Delivered, RTO, cancelled or in transit |
Handling recent days
Decisions get made on the last few days of data, and those are exactly the days where most orders are still in transit. Counting only confirmed deliveries would make every new campaign look terrible.
- 1Count what's resolvedDelivered revenue in full, RTO and cancellations at zero.
- 2Estimate what's in transitApply the expected RTO rate for that campaign, payment method and pincode mix.
- 3True it upReplace estimates with actuals as shipments resolve. The estimate gets better as history builds.
Worked examples
Example 1: Three campaigns, re-ranked
Three illustrative campaigns over a month, with all orders now resolved.
| Campaign | Spend | Placed revenue | Placed ROAS | Lost to RTO and cancellations | Delivered ROAS |
|---|---|---|---|---|---|
| Sale prospecting | โน2,00,000 | โน9,00,000 | 4.50 (#1) | 30% | 3.15 (#3) |
| UGC prospecting | โน2,00,000 | โน7,60,000 | 3.80 (#3) | 10% | 3.42 (#2) |
| Retargeting | โน1,00,000 | โน4,20,000 | 4.20 (#2) | 8% | 3.86 (#1) |
- SaleTop of the table on placed ROAS, bottom on delivered. Its discount-led COD orders lose 30% before they arrive.
- UGCLooked weakest, but delivers 3.42, ahead of the sale campaign. Moving budget towards it on placed ROAS would have gone the wrong way.
Example 2: The same week, read two ways
An illustrative campaign spent โน1,20,000 last week and booked โน5,00,000 of orders. So far โน2,80,000 has been delivered, โน40,000 has come back, and โน1,80,000 is still in transit. Its usual RTO rate is 15%.
Using delivered ROAS to decide
Read it next to placed ROAS and against your break-even ROAS. The gap between the two is as telling as either number. Treat these rows as starting points.
Common mistakes
- A flat haircut for every campaignKeeps the ranking unchanged and hides the real offenders.
- Counting only confirmed deliveriesMakes every recent campaign look worse than it is. Estimate the in-transit share.
- Starting from platform ROASPlatforms over-attribute before RTO even enters the picture. Start from true attributed orders.
- Comparing it to placed break-evenIf the RTO shipping legs already sit in your CM1 fulfilment costs, compare delivered ROAS to that break-even, not a gross one.
Frequently asked questions
Is delivered ROAS the same as true ROAS?
No. True ROAS fixes who gets credit for an order. Delivered ROAS fixes whether the order turned into revenue. You want both: true attribution first, then delivery on top.
How accurate is the estimate for recent days?
It's only as good as the history behind it. Estimates by campaign, payment method and pincode tier are much closer than a single brand-wide rate, and they're corrected once shipments resolve.
Does this matter for prepaid-only brands?
Much less. Prepaid orders rarely come back undelivered, so delivered and placed ROAS stay close. It matters most where COD is a large share of orders.
Related metrics
Rank campaigns on what gets delivered
BooleanMaths matches shipping outcomes to every attributed order, so you can judge campaigns on revenue that actually reaches your bank account.
Delivered ROAS
ROAS counted only on orders that actually reached the customer. It takes out cancellations and RTO, and it often reorders which campaigns look best.
For recent days where orders are still in transit, delivered revenue is estimated and trued up as shipments resolve.
What is delivered ROAS?
Standard ROAS counts every order the moment it's placed. In markets with a lot of cash on delivery, a share of those orders never get delivered, so the revenue behind that ROAS never arrives.
Delivered ROAS only counts revenue from orders that reached the customer. Because RTO varies so much by campaign, it doesn't just shrink every ROAS by the same amount. It changes which campaigns come out on top.
How it's calculated
You need three things joined on the same order: which ad gets credit for it, what it was worth, and whether it was delivered.
| Input | Source | What it gives us |
|---|---|---|
| spend | Meta, Google and other ad platforms | Denominator |
| attributed_orders | Your attribution model, not the platform's | Which orders belong to which campaign |
| order_value | Shopify | Revenue per order |
| delivery_status | Shipping partners, by order ID | Delivered, RTO, cancelled or in transit |
Handling recent days
Decisions get made on the last few days of data, and those are exactly the days where most orders are still in transit. Counting only confirmed deliveries would make every new campaign look terrible.
- 1Count what's resolvedDelivered revenue in full, RTO and cancellations at zero.
- 2Estimate what's in transitApply the expected RTO rate for that campaign, payment method and pincode mix.
- 3True it upReplace estimates with actuals as shipments resolve. The estimate gets better as history builds.
Worked examples
Example 1: Three campaigns, re-ranked
Three illustrative campaigns over a month, with all orders now resolved.
| Campaign | Spend | Placed revenue | Placed ROAS | Lost to RTO and cancellations | Delivered ROAS |
|---|---|---|---|---|---|
| Sale prospecting | โน2,00,000 | โน9,00,000 | 4.50 (#1) | 30% | 3.15 (#3) |
| UGC prospecting | โน2,00,000 | โน7,60,000 | 3.80 (#3) | 10% | 3.42 (#2) |
| Retargeting | โน1,00,000 | โน4,20,000 | 4.20 (#2) | 8% | 3.86 (#1) |
- SaleTop of the table on placed ROAS, bottom on delivered. Its discount-led COD orders lose 30% before they arrive.
- UGCLooked weakest, but delivers 3.42, ahead of the sale campaign. Moving budget towards it on placed ROAS would have gone the wrong way.
Example 2: The same week, read two ways
An illustrative campaign spent โน1,20,000 last week and booked โน5,00,000 of orders. So far โน2,80,000 has been delivered, โน40,000 has come back, and โน1,80,000 is still in transit. Its usual RTO rate is 15%.
Using delivered ROAS to decide
Read it next to placed ROAS and against your break-even ROAS. The gap between the two is as telling as either number. Treat these rows as starting points.
Common mistakes
- A flat haircut for every campaignKeeps the ranking unchanged and hides the real offenders.
- Counting only confirmed deliveriesMakes every recent campaign look worse than it is. Estimate the in-transit share.
- Starting from platform ROASPlatforms over-attribute before RTO even enters the picture. Start from true attributed orders.
- Comparing it to placed break-evenIf the RTO shipping legs already sit in your CM1 fulfilment costs, compare delivered ROAS to that break-even, not a gross one.
Frequently asked questions
Is delivered ROAS the same as true ROAS?
No. True ROAS fixes who gets credit for an order. Delivered ROAS fixes whether the order turned into revenue. You want both: true attribution first, then delivery on top.
How accurate is the estimate for recent days?
It's only as good as the history behind it. Estimates by campaign, payment method and pincode tier are much closer than a single brand-wide rate, and they're corrected once shipments resolve.
Does this matter for prepaid-only brands?
Much less. Prepaid orders rarely come back undelivered, so delivered and placed ROAS stay close. It matters most where COD is a large share of orders.
Related metrics
Rank campaigns on what gets delivered
BooleanMaths matches shipping outcomes to every attributed order, so you can judge campaigns on revenue that actually reaches your bank account.