ACOS: Advertising Cost of Sale Explained for Quick Commerce (Instamart, Zepto, Blinkit)
Last updated: March 2026
Definition
ACOS (Advertising Cost of Sale) is the percentage of revenue spent on advertising. If you spend ₹100 on ads and generate ₹500 in sales from those ads, your ACOS is 20%.
Formula: ACOS = (Ad Spend ÷ Ad Revenue) × 100
ACOS is the primary efficiency metric used by Blinkit, Zepto, and Instamart to report campaign performance. Unlike ROAS, which tells you how much revenue you earned per rupee spent, ACOS tells you what fraction of your revenue went back into advertising.
Why ACOS Is the Metric That Matters Most for Profitability
ROAS sounds impressive — "we're running 6x ROAS!" — but ACOS connects directly to your P&L. If your gross margin is 30% and your ACOS is 35%, every ad-driven sale loses money. ROAS can mask this because it doesn't explicitly compare against your margin. ACOS makes the comparison unavoidable.
Good vs. Bad ACOS for Quick Commerce
There is no single "good" ACOS — it depends entirely on your gross margin.
| Category | Gross Margin | Target ACOS | Max Acceptable ACOS | Equivalent ROAS Target |
|---|---|---|---|---|
| Grocery staples | 15–20% | 8–12% | 15% | 8–12x |
| Snacks & beverages | 25–35% | 12–18% | 25% | 5.5–8x |
| Personal care | 35–50% | 18–28% | 38% | 3.5–5.5x |
| Health & wellness | 40–60% | 20–32% | 45% | 3–5x |
| Premium categories | 50–65% | 25–38% | 50% | 2.5–4x |
The rule: Your ACOS should not exceed your gross margin. If your gross margin is 30% and your ACOS is 35%, every sale from ads is losing money — you are paying more for ads than you keep after cost of goods.
A brand with a 30% margin targeting 20% ACOS keeps 10% of revenue after ad cost and COGS. Compress that to 5% or lower after adding platform commissions (15–25%), and you understand why ACOS discipline is the single most important metric for Q-commerce profitability.
How ACOS Relates to ROAS
ACOS and ROAS are inverses of each other:
- ACOS = 1 ÷ ROAS (expressed as a percentage)
- ROAS = 1 ÷ ACOS (expressed as a multiplier)
| ACOS | ROAS Equivalent |
|---|---|
| 10% | 10x |
| 15% | 6.7x |
| 20% | 5x |
| 25% | 4x |
| 33% | 3x |
| 50% | 2x |
When platforms report ROAS, you can immediately convert it to ACOS to check against your margin.
Important: Platform-reported ACOS uses platform-attributed revenue, which typically overstates actual incremental sales by 20–40% due to attribution windows and view-through counting. True ACOS, calculated against independently verified orders, is always higher than what your dashboard shows. See Why your Instamart ROAS is lying for the attribution problem explained.
ACOS by Platform
| Platform | Average ACOS (Grocery) | Average ACOS (Personal Care) | Average ACOS (Health) | Notes |
|---|---|---|---|---|
| Blinkit | 10–15% | 18–25% | 22–30% | Most mature auction — stable pricing |
| Zepto | 12–18% | 20–28% | 25–35% | Higher due to browse placement mix |
| Instamart | 8–14% | 16–24% | 20–28% | Lower due to higher basket sizes |
Instamart ACOS appears lowest because higher average order values spread the ad cost over more revenue. But true ACOS (including Swiggy's platform commissions) often matches or exceeds Blinkit levels. Always compare true ACOS, not platform-reported ACOS.
Why ACOS Spikes — and What to Do About It
The most common causes of ACOS deterioration on Q-commerce:
-
Zero-conversion keywords still running — keywords accumulating spend with no attributed orders inflate ACOS silently. Audit any keyword with 30+ clicks and zero conversions. This is the primary driver of ad waste.
-
Broad match on competitive terms — keyword match types on Instamart and Zepto can trigger your ads on tangentially related searches that rarely convert. A "protein bar" broad match triggering for "bar chocolate" has an ACOS of infinity.
-
Poor bid management — bids set too high relative to conversion rate drive up spend faster than revenue. ACOS rising while volume stays flat is almost always a bidding problem.
-
Inventory-auction mismatch on Zepto — Zepto serves ads in zones where your dark store has low stock. If the shopper clicks but can't buy (out of stock), the click costs you with zero revenue. ACOS in these zones can exceed 100%. See the Zepto advertising guide for mitigation.
-
Off-peak spending — ads running at 2AM in low-conversion windows spend budget that converts at 4–5x the ACOS of peak-hour spend. Implement dayparting to fix this.
-
Quality Score degradation — falling Quality Score raises your CPC without any change in bids, silently inflating ACOS. Check listing completeness and image quality.
How to Track ACOS by Keyword
Platform dashboards show ACOS at the campaign level. The real opportunity is keyword-level ACOS:
- Export keyword performance weekly
- Flag any keyword with ACOS > 2× your target
- Pause immediately if ACOS > 3× target with 20+ clicks
- Increase bids on keywords with ACOS < 50% of target (you're leaving profitable volume on the table)
The 20% of keywords with the lowest ACOS typically drive 60–70% of profitable revenue. Concentrate budget there.
ACOS Optimisation Framework
| ACOS Range vs Target | Action | Timeline |
|---|---|---|
| Below 50% of target | Increase bids 15–20% to capture more volume | Immediately |
| 50–100% of target | Maintain — this is the sweet spot | Ongoing |
| 100–200% of target | Reduce bids 10–15%, review keyword match types | Within 3 days |
| 200–300% of target | Reduce bids 30%, switch to exact match | Within 24 hours |
| Above 300% of target | Pause keyword immediately | Same day |
How to Reduce ACOS Systematically
- Pause zero-conversion keywords — immediate ACOS reduction
- Switch broad match to exact match — higher conversion rates lower ACOS
- Implement dayparting — cut off-peak waste that inflates ACOS
- Improve product images — lifting CTR improves Quality Score, which lowers CPC and ACOS
- Use audience targeting — pincode-level bids prevent geographic overpaying
- Fix budget pacing — ensure budget reaches peak-conversion windows
- Automate with an AI agent — continuous keyword-level ACOS monitoring catches spikes within hours
Get a free audit to see your true ACOS across Blinkit, Zepto, and Instamart — Ladya calculates ACOS including platform commissions, not just the vanity number on your dashboard.
Related Reading
- ROAS — the inverse of ACOS; use both to verify campaign health
- CPA — cost per order, complements ACOS for fixed-budget campaigns
- Ad waste — the primary driver of ACOS inflation
- Bid management — the lever that controls ACOS at the keyword level
- Quality Score — improving QS reduces CPC and ACOS simultaneously
- Zepto ad spend efficiency — platform-specific ACOS optimization
Frequently Asked Questions
What is a good ACOS for Quick Commerce?▾
It depends on your gross margin. For grocery staples (15–20% margin), target 8–12% ACOS. For health and wellness (40–60% margin), 20–32% is healthy. The universal rule: ACOS must stay below gross margin or every sale from ads is unprofitable.
How is ACOS different from ROAS?▾
ACOS and ROAS are inverses. ACOS = (Ad Spend ÷ Revenue) × 100. ROAS = Revenue ÷ Ad Spend. A 5x ROAS equals 20% ACOS. Use ACOS when you think in terms of 'what % of my revenue goes to ads.' Use ROAS when comparing revenue multiples.
Why is my ACOS rising even though I haven't changed anything?▾
Three common causes: zero-conversion keywords silently accumulating spend, competitor CPC increases forcing you to pay more per click, and inventory stock-outs on Zepto where clicks cost you but orders can't complete. Check keyword-level ACOS first.
What ACOS should I expect on Blinkit vs Zepto vs Instamart?▾
Blinkit: 10–15% ACOS for grocery, 18–25% for personal care. Zepto: 12–18% grocery, 20–28% personal care (higher due to browse placement mix). Instamart: 8–14% grocery, 16–24% personal care (lower due to higher basket sizes). Always compare true ACOS including platform commissions.
At what ACOS level should I pause a keyword?▾
Pause any keyword with ACOS exceeding 3× your target for 5+ days with 20+ clicks. For keywords at 2–3× target, reduce bids by 15–25% and switch to exact match. Keywords below 50% of target ACOS are under-invested — increase bids to capture more profitable volume.
Key Takeaways
- 1ACOS above your gross margin means every ad-driven order is losing money — check this threshold before scaling any campaign.
- 2Platform-reported ACOS is optimistic by 20–40% due to attribution windows — calculate true ACOS against independently verified orders.
- 3The 20% of keywords with the lowest ACOS typically drive 60–70% of profitable revenue — concentrate budget there.
- 4Zero-conversion keywords are the primary driver of ACOS inflation — pause any keyword with 30+ clicks and zero orders.
- 5ACOS and ROAS are inverses: a 5x ROAS equals 20% ACOS. Use ACOS for margin analysis, ROAS for scaling decisions.
Stop guessing. Start optimizing.
Ladya watches your q-commerce ads 24/7 — catches waste, finds winners, and acts on it.
Get Started for FREERelated Reading
ROAS Explained for Quick Commerce (Instamart, Zepto, Blinkit)
GlossaryCPA (Cost Per Acquisition) in Quick Commerce (Instamart, Zepto, Blinkit)
GlossaryWhat Is Ad Waste? How to Detect and Eliminate It
GlossaryBid Management for Quick Commerce (Instamart, Zepto, Blinkit): Manual vs Automated
GlossaryQuality Score: What It Is and How to Improve It