At a Glance: Same Item, Two Channels, Different Math
| Dine-In | Delivery App | |
|---|---|---|
| Menu price | $11.67 | $11.67 |
| Platform deductions (25%) | $0 | $2.92 |
| Food cost | $4.20 | $4.20 |
| Packaging + channel labor | $0 | $1.05 |
| You keep | $7.47 | $3.50 |
| Margin | 64% | 30% |
Same price, same item. Delivery costs $3.97 more per order. Most operators need $14-$16 delivery price to match dine-in margin.
Price parity across dine-in and delivery is a margin choice. In most U.S. operations, that choice reduces retained dollars on every third-party order.
This guide gives a strict pricing sequence: set assumptions, run formula, interpret margin gap, then execute repricing.
1) Context: Why Delivery Price Parity Breaks Contribution
Delivery channel economics add costs dine-in does not carry at the same level:
- platform deduction stack
- packaging and bagging cost
- channel-specific issue/remake exposure
- promo funding pressure
If you hold one price across channels, delivery margin will usually compress first.
2) Table: Published Platform Benchmarks (US)
| Platform | Public delivery examples | Public pickup examples | Pricing implication |
|---|---|---|---|
| DoorDash | 15% / 25% / 30% tiers | 6% pickup in partnership messaging | Delivery menu must absorb higher deduction load |
| Uber Eats | 20% / 25% / 30% tiers | 7% parity-verified pickup, otherwise 10% | Pickup and delivery should not share identical pricing logic |
| Grubhub | Marketing commission packages (commonly 5% / 15% / 20%) | Varies by setup | Final menu pricing must use statement-level effective rate |
Published plan pages are baseline references, not final order economics.
3) Formula: Required Delivery Menu Price
Definitions:
F= food cost per dishP= packaging + channel labor per orderR= effective take rate (all platform deductions + promo funding)M= target contribution margin
Required delivery menu price = (F + P) / (1 - R - M)
Supporting checks:
Effective take rate = Total deductions / Order subtotal
Contribution margin = Contribution per order / Order subtotal
If (1 - R - M) is 0 or negative, assumptions are not operationally feasible.
4) Worked Example (US Fast-Casual Item)
Assumptions:
- Food cost
F: $4.20 - Packaging + channel labor
P: $1.05 - Effective take rate
R: 25% - Target contribution margin
M: 30%
Required delivery price = (4.20 + 1.05) / (1 - 0.25 - 0.30)
= 5.25 / 0.45
= $11.67
If the dine-in price is $10.49 and delivery stays at $10.49, the item is below required price for the target margin.
5) Interpretation: Turn Math Into Menu Decisions
| Result from model | Interpretation | Action |
|---|---|---|
| Required price is 8% to 15% above dine-in | Typical third-party gap | Set delivery-specific base price |
| Required price is 20%+ above dine-in | Cost structure is stressed | Redesign item or bundle instead of raw price jump |
| Margin still low after repricing | Cost leak outside base formula | Audit modifier, packaging, and remake costs |
| Pickup margin healthy, delivery weak | Channel mix imbalance | Push pickup-first merchandising |
6) Action: 10-Minute Weekly Repricing Routine
- Update current ingredient costs for top 10 delivery SKUs.
- Refresh packaging and channel labor assumptions.
- Recompute effective take rate from latest payout data.
- Run required price formula for each SKU.
- Reprice only items outside margin tolerance band.
- Flag and redesign items needing large price jumps.
7) Practical Guardrails
- Keep one source of truth for item cost inputs.
- Separate dine-in vs pickup vs delivery P&L views.
- Limit simultaneous pricing and promo experiments.
- Validate price changes with retained dollars, not only conversion.
Related Guides
- DoorDash vs Uber Eats vs Grubhub: Real Take Rate (2026)
- DoorDash Real Take Rate: Why Your 30% Tier Costs 40%
- Uber Eats 15% Self-Delivery? Real Cost Is 25%+ (2026)
- Your $30 Delivery Order Nets $11: The Real Fee Math (2026)