ResearchFebruary 28, 2026· 8 min read

DoorDash vs Uber Eats vs Grubhub: Real Price Comparison (2026)

We analyzed thousands of restaurant listings to compare what you actually pay across delivery platforms — including the hidden fees nobody talks about.

The Hidden Cost of Food Delivery

When you see a $12 burger on DoorDash, you're not paying $12. By the time you check out, that burger costs $18-22. The same burger ordered directly from the restaurant's website? Often $13-15, delivered.

The gap comes from three layers of hidden costs that delivery platforms build into every order:

  • Menu markup: Restaurants raise prices 15-30% on delivery apps to cover platform commissions
  • Service fees: 10-18% of your subtotal, often not clearly disclosed until checkout
  • Delivery fees: $2-8 per order, varying by distance, demand, and whether you have a subscription

Platform-by-Platform Breakdown

DoorDash

DoorDash is the largest US delivery platform with ~67% market share. Their fee structure:

  • Service fee: 10-15% of subtotal
  • Delivery fee: $1.99-$5.99 (reduced or waived with DashPass at $9.99/mo)
  • Small order fee: $2 on orders under $12
  • Menu prices: typically 15-20% above in-store prices

Total markup on a $30 order: $8-14 above in-store pricing (27-47%)

Uber Eats

Uber Eats is the #2 platform with ~23% market share. Their fees tend to be slightly higher:

  • Service fee: 15-18% of subtotal
  • Delivery fee: $0.49-$7.99 (waived with Uber One at $9.99/mo)
  • Small order fee: $2 on orders under $10
  • Menu prices: typically 20-30% above in-store prices

Total markup on a $30 order: $10-17 above in-store pricing (33-57%)

Grubhub

Grubhub has ~8% market share and recently merged with Wonder. Their fees:

  • Service fee: 5-15% of subtotal
  • Delivery fee: $0.99-$7.99 (reduced with Grubhub+ at $9.99/mo)
  • Menu prices: typically 10-20% above in-store

Total markup on a $30 order: $6-12 above in-store pricing (20-40%)

Direct Ordering (Toast, Square, ChowNow)

When restaurants use their own ordering systems, the economics are completely different:

  • Menu prices: same as in-store (no markup)
  • Service fee: $0-2 flat (some charge nothing)
  • Delivery fee: $3-6 (or free above a threshold)
  • Platform commission to restaurant: 0-5% vs 15-30% on delivery apps

Total markup on a $30 order: $3-6 above in-store pricing (10-20%)

The Bottom Line

On a typical $30 restaurant order, you pay $8-17 extra through delivery apps vs $3-6 extra ordering directly from the restaurant. That's $5-15 in savings per order — or $100-300/month for regular delivery users.

Why Are Prices Different Across Platforms?

Restaurants set different prices on each platform based on the commission they pay. A restaurant paying 30% to Uber Eats but 15% to DoorDash will set higher menu prices on Uber Eats to maintain margins. This creates genuine price differences on the same item across platforms.

This is exactly why comparing prices matters — the cheapest platform varies by restaurant and by order size.

Do Subscription Plans Actually Save Money?

DashPass, Uber One, and Grubhub+ all cost $9.99/month and promise reduced fees. They're worth it if you order 4+ times per month from the same platform. But here's the catch:

  • They reduce delivery fees, not menu markups — you still pay inflated menu prices
  • Service fees are reduced but not eliminated
  • They lock you into one platform instead of shopping around

A subscription saves you $3-5 per order on fees but you're still paying 15-30% menu markups. Ordering directly saves you both.

How Eddy Helps

Eddy compares prices across DoorDash, Uber Eats, Grubhub, and direct ordering for 19,000+ restaurants in 30 US cities. Instead of checking each app manually:

  1. Browse any delivery app as usual
  2. Eddy shows you which platform has the lowest total price
  3. See if the restaurant offers direct ordering (often 15-30% cheaper)
  4. Switch with one click

Stop overpaying for delivery

Eddy finds the cheapest way to order from your favorite restaurants. Free forever.

Install Eddy Free →