The instinct when you put a restaurant on Shopify is to over-install: browse the app store, see a category for everything, add one of each, and end up with a dozen apps that fight over your checkout and a $400 monthly bill. The better path is to install the minimum stack that covers the capabilities below, run live for a month, and add only what experience proves you need.
This is the full reference stack for a Shopify restaurant or prepared-food store in 2026 β what each layer does, the current best apps and their real prices, and what a launch stack costs at three sizes. (Selling groceries or convenience items instead? That stack is a little different β see the Shopify local delivery guide for food stores.)
The 7 capabilities a restaurant storefront has to deliver
Every Shopify restaurant has to do these seven things. Your apps map directly to them β pick one app per layer, not two, not zero.
| # | Capability | What it does in plain terms |
|---|---|---|
| 1 | Menu + checkout | Browse the menu, add to cart, take payment. Shopify + a food theme. |
| 2 | Menu modifiers | "No onions," "add cheese," "choose protein" on a dish. |
| 3 | Kitchen hours | Close checkout when the kitchen is off. |
| 4 | Delivery & pickup scheduling | Let the customer pick ASAP or a slot; set zones. |
| 5 | Order rules | Per-slot/day capacity, cutoffs, per-customer limits, plus a minimum order value. |
| 6 | Dispatch / last-mile | Route the order to a driver and track it. |
| 7 | POS / reviews / mobile (optional) | Counter orders, social proof, a native app. |
Two of these β kitchen hours (#3) and most of order rules (#5) β are handled by one app, OrderRules, which can also cover the slot picker in #4. The minimum order value comes from Shopify itself. So a typical restaurant needs about four apps for the core, not seven.
What native Shopify covers for free
Before installing anything, know what Shopify already does, so you don't pay for it twice:
- Menu + checkout + payments β the catalogue, cart, and Shopify Payments.
- Local delivery β a delivery area by radius or postcode, a fee, and a minimum β but among express wallets only Shop Pay offers it (Apple Pay, Google Pay, and PayPal customers don't see it), and with no time slots or capacity.
- Local pickup β a "ready in X" prep time per location, but no customer-chosen pickup time.
- POS Lite β free in-person selling.
Everything else in this stack β kitchen hours, ASAP or scheduled slots, capacity caps, menu modifiers, dispatch β needs an app. Native gets you started; it doesn't run a real restaurant on its own.
Layer 1: Storefront theme & menu
Shopify handles the catalogue; the choice that matters is the theme. Good news: you don't need to pay for one.
Savor is Shopify's own free theme built for food and beverage β edge-to-edge food imagery, nutritional info, quick-buy. Crave and Taste are other free Shopify food/drink themes, and the general-purpose Dawn and next-gen Horizon themes are free and fast. For most restaurants a free food theme is the right call; revisit a paid theme only once you've run 50β100 orders and know what your menu UX actually needs.
Build each dish as a product, grouped into collections (Burgers, Sides, Drinks, Combos). The options on a dish are the next layer.
Layer 2: Menu modifiers ("no onions, add cheese")
Shopify's built-in variants top out and get unwieldy for food customization. A product-options app adds dropdowns, checkboxes, and conditional logic with optional price add-ons:
- Easify Product Options β Free Β· Pro $9.99 Β· Premium $19.99. Deep conditional logic and add-on pricing; a common pick for food.
- Globo Product Options β Free Β· Premium $9.90 Β· Advanced $19.90. Unlimited options beyond the variant cap.
- Avis (AvisPlus) Product Options β Free Β· Pro $12 Β· Advanced $24, with POS integration.
Any of the three covers a food menu well. Start on a free tier and upgrade when you need conditional logic (e.g. "extra patty" only shows on burgers).
Layer 3: Kitchen hours
Default Shopify keeps checkout open 24/7; a kitchen doesn't. This is the first rule Shopify won't enforce for you β leave it out and someone orders at 2am and you wake to a refund.
Enforce trading hours at the Shopify Functions checkout layer, not a display-only widget, so checkout genuinely closes (across Shop Pay, Apple Pay, Google Pay, and direct URLs) with a clear "we're closed, back at 11" message. This is OrderRules on the free Starter plan; the deeper context is in how to set store hours and display vs. enforcement. For a restaurant the OrderRules path is usually best because the same app also handles Layer 5 (order rules) β one app, two layers.
Split shifts. Most kitchens run lunch and dinner with a gap in between. The Weekly Schedule takes one open window per day, and a Calendar date with special hours replaces that day's window rather than adding a second one. So set the day from lunch open to dinner close (11:00β21:00), and on Advanced offer time slots only during lunch and dinner, so every order is booked into a service. Each day can have its own hours, and a closing day (many restaurants shut Mondays) is simply set to Closed all day.
Layer 4: Delivery & pickup scheduling
This is the customer-facing "when and where" β pick ASAP or a time slot, delivery or pickup, within your zones. The big question is ASAP vs. scheduled, and it splits the field:
- Zapiet Eats β $49.99/month (250 orders included). The purpose-built restaurant product: on-demand ASAP ordering plus scheduled slots, prep-time buffers, per-slot limits, and true kitchen accept / delay / decline pace control β zero commission. If you want the DoorDash-style "order now, ready in 25 min" experience on your own store, this is the one that does it.
- Zapiet β Pickup + Delivery β Essential $49.99 Β· Advanced $79.99 Β· Professional $179.99. The heavyweight for complex multi-zone, multi-location scheduling (scheduled-slot oriented rather than ASAP).
- Pickeasy β Free (β€10 orders) Β· $9.99 Β· $19.99 Β· $29.99. Strong value slot picker for pickup + local delivery.
- Bird β Free (10 orders) Β· $19.99 Β· $49.99 Β· $99.99. Clean calendar picker with time slots.
- Stellar β Free (β€100 orders) Β· from $14.99. Budget picker with pickup.
Most of these (except Zapiet Eats) are scheduled-slot tools β great for "order by 2pm for a 6pm delivery," not for on-demand. Pick one; don't install two delivery apps or customers see double slot pickers. Full side-by-side detail is in the best Shopify delivery date picker apps guide. And remember: none of these enforce your kitchen hours or capacity at checkout β that's the next layer.
ASAP vs. scheduled ordering: the restaurant question
This is the detail that separates a restaurant setup from a generic food store. Two ordering modes:
- Scheduled β the customer picks a future slot ("6:00β6:30pm today"). Every general slot app (Zapiet, Pickeasy, Bird, Stellar) does this well. Ideal for meal prep, catering, and stores that batch-cook to set windows.
- ASAP / on-demand β "order now, ready in about 25 minutes," the aggregator experience. Among Shopify apps, Zapiet Eats is the one built for it, with prep-time buffers and manual accept / delay / decline so the kitchen paces the queue in real time.
Whichever mode you run, the pace still has to be controlled β and that's the ordering-rules layer. Per-slot and per-day capacity caps (OrderRules) stop either mode from handing the kitchen more than it can cook: scheduled orders sell a slot out; ASAP orders run into the daily cap. Prep-time buffers decide how long each order takes; capacity caps decide how many you accept β you want both.
Layer 5: Order rules β minimum, capacity, cutoffs, per-customer
A restaurant needs four rules, all enforced server-side at checkout across every wallet. Three live in OrderRules; the minimum comes from Shopify:
- Minimum order value. A $6 delivery loses money once the driver's paid; set a floor (many food shops use $20β$30). Use order value limits in Shopify's free Checkout Blocks app, which hold on every payment method including express wallets. See the minimum order value guide.
- Per-day and per-slot capacity caps. Cap orders at what the kitchen can actually cook per window, so a rush sells out instead of overbooking. See delivery capacity limits.
- Order cutoffs + lead time. A same-day cutoff and a lead time in days, so late orders book a later date. See cutoff times.
- Per-customer limits. Useful for flash deals and limited items.
This is the layer that keeps the kitchen from being overwhelmed β the operational backbone under everything else. The vertical detail is in Shopify order limits for food businesses. OrderRules' Advanced plan ($19.99) also includes its own delivery/pickup date-and-slot picker, so a simpler store can cover Layers 4 and 5 in one app. What it covers for a restaurant, and what it doesn't, is on OrderRules for restaurants.
Capacity per shift
A kitchen can plate a fixed number of takeout orders per shift before ticket times stretch. The number depends on menu, stations and staff, so count it from a few real services. On a 30-order lunch, order 31 makes all 31 worse.
Shopify has no shift cap. OrderRules gives you two ways to set one:
- Store-wide daily cap (free Starter, up to 100/day). One ceiling for the whole day. Simple, but a busy lunch can eat dinner's share.
- Per-slot capacity (Advanced). Split each shift into pickup or delivery slots and cap each one. The slots add up to the shift's ceiling, and a full slot doesn't touch the next.
Worked example: a 12-seat restaurant. A composite, not a customer. A small Italian place with a two-person kitchen adds Shopify takeout. Lunch pulls 50β60 orders, tickets outrun the kitchen, and the team starts comping meals. The setup:
| Setting | Lunch | Dinner |
|---|---|---|
| Slot hours | 11:00β14:00 | 17:00β21:00 |
| Slots | Six 30-minute slots | Eight 30-minute slots |
| Cap per slot | 5 orders | 5 orders |
| Shift ceiling | 30 orders | 40 orders |
No slots are offered between 14:00 and 17:00, so nothing is booked into the gap. Lunch stops at the number the kitchen can plate, tickets stay inside the window it was staffed for, and refunds stop being the release valve. The call is made once, in a setting, not by whoever is watching the ticket printer. Declining order 31 is what keeps orders 1 to 30 good.
Tune it after 2β4 weeks of real services. If slow dishes (wood-fired pizza, braises) are the bottleneck, give them their own product daily cap so a shift can't fill with slow tickets. A capacity alert emails you before the daily cap is reached.
Scheduled and catering orders
Catering runs on notice, not on tonight's queue. A tray order for 40 needs shopping and prep days ahead; most caterers want 48β72 hours. On Advanced, give your catering collection its own availability rule, plus a per-date cap:
- Lead time: 3 days. The earliest date a customer can pick is three days out, so nobody books Saturday on a Friday.
- Deliverable weekdays on the rule for the days you cater.
- Per-date cap: for example 3 catering orders per date. Availability rules don't carry their own cap, so set a daily cap counted by delivery date on each catering product (or, if catering is all you schedule, the store-wide Maximum orders per delivery date). When Saturday is full it closes, and Sunday stays open. Staff and vans are the limit, not stock.
The rule is scoped to the collection, so regular takeout keeps its same-day slots. Delivery blackout dates apply to the whole store, not one rule. The per-date cap earns its keep on weekends, in wedding season (roughly May to October in North America) and in the NovemberβDecember party rush. Leave a buffer: if you can do four events, cap at three. The cap counts the event date, not the day the order came in; order date vs delivery date explains why that matters.
Layer 6: Dispatch / last-mile
Someone has to carry the food, and that's a separate concern from the checkout. A dispatch app takes placed orders and routes them:
- Shipday β Free (300 orders/month) Β· Pro $39 Β· Elite $99. Restaurant-origin dispatch to your own fleet or third-party couriers (DoorDash/Uber), with a driver app and live tracking. The closest "restaurant dispatch" fit.
- EasyRoutes β Free Β· Standard $39 Β· Premium $59. Route optimization, a driver app, live GPS tracking, and proof of delivery for your own drivers.
These run after the order is placed. They don't gate checkout, and they aren't a substitute for the ordering rules β they're the delivery-logistics layer on top.
Layer 7: POS, reviews & mobile (optional)
Add these when the core is running, not before:
- Shopify POS β Lite is free with any paid plan (fine for occasional counter orders); POS Pro is $89/location for full retail features. Only worth Pro once you're taking real in-person volume.
- Reviews β Judge.me (Free Β· $15) or Loox (free Beginner tier Β· $49.99) add photo reviews and social proof, which matters a lot for food.
- Mobile app β builders like Tapcart (from $500), Vajro, or MobiLoud ($1,499) turn your store into native iOS/Android apps. Powerful for repeat orders via push notifications, but the pricing means it only pays back at real volume β mobile web is fine to launch.
The reference stack at three sizes
Lean stack (~$39/month)
| Layer | App | Cost |
|---|---|---|
| Theme | Savor (free) | Free |
| Kitchen hours + daily cap | OrderRules Starter | Free |
| Delivery + pickup | Shopify native (no other express wallets) | Free |
| Platform | Shopify Basic | $39/mo |
Best for: a brand-new restaurant testing the model. Limits: no ASAP or slot picker, no capacity caps, no menu modifiers beyond variants, and native local delivery only works with Shop Pay among the express wallets.
Standard stack (~$70β$130/month)
| Layer | App | Cost |
|---|---|---|
| Platform | Shopify Basic | $39/mo |
| Kitchen hours + order rules + slot picker | OrderRules Advanced | $19.99/mo |
| Menu modifiers | Easify Product Options | Freeβ$9.99/mo |
| Delivery scheduling (deeper) | Pickeasy or Bird | Freeβ$30/mo |
| Dispatch | Shipday | Freeβ$39/mo |
| Theme | Savor (free) | Free |
Best for: most restaurants doing real delivery + pickup volume. OrderRules Advanced covers hours, capacity, cutoffs, and the slot picker (set the delivery minimum in Checkout Blocks); add a dedicated scheduling app only if you need deeper zone rules.
Full stack ($250β$500+/month)
| Layer | App | Cost |
|---|---|---|
| Platform | Shopify (mid-tier) | $105/mo |
| Kitchen hours + order rules | OrderRules Advanced | $19.99/mo |
| ASAP ordering + kitchen pace | Zapiet Eats | $49.99/mo |
| Menu modifiers | Easify Premium | $19.99/mo |
| Dispatch | Shipday Elite / EasyRoutes | $59β$99/mo |
| POS (counter) | Shopify POS Pro | $89/location |
| Reviews | Judge.me / Loox | $15β$50/mo |
| Mobile app (if justified) | Tapcart | $500+/mo |
Best for: high-volume restaurants and multi-location or ASAP-first operations. Most stores don't need everything here β add the modules that map to real operations.
Putting it together: a delivery burger shop
A concrete standard stack for a burger shop doing delivery to a few nearby areas plus pickup:
- Shopify Basic + the free Savor theme for the menu.
- Easify Product Options so customers build their burger (patty count, cheese, no onions).
- OrderRules Advanced for the kitchen hours (checkout closes after 11pm), a 40-orders-a-night cap split across slots, a Friday-rush cutoff, and the delivery/pickup slot picker.
- Checkout Blocks (free, from Shopify) for a $20 minimum order value.
- Shipday to dispatch each order to the shop's own driver with live tracking.
That's roughly $70β$90/month all-in, and it covers the whole flow: a customer builds a burger, picks delivery or 1-hour pickup, can only order in-hours and above the minimum, the night caps at 40 orders, and the driver gets a routed, tracked order. Add Zapiet Eats (+$49.99) the day you want true ASAP "order now" ordering, or POS Pro when the counter gets busy. Nothing else is needed to launch β and none of it pays a marketplace commission.
The three layers people confuse
The single biggest source of over-buying (or gaps) is treating these as one thing. They're three:
- Ordering rules β OrderRules. Whether and how much can be ordered: kitchen hours, per-day/per-slot capacity, cutoffs, per-customer limits. Checkout-level gating, across every wallet. (Plus a slot picker on Advanced; pair it with Checkout Blocks for a minimum order value.)
- Delivery scheduling β Zapiet Eats / Zapiet / Pickeasy / Bird / Stellar. When and where it arrives: the customer-facing ASAP-or-slot picker, pickup, and zones.
- Dispatch / routing β Shipday / EasyRoutes. Getting it to the door: route optimization, driver assignment, live tracking β after the order is placed.
A store running only OrderRules has rules and a slot picker but no driver routing. A store running only a delivery app has slots but usually nothing that closes ordering outside kitchen hours. A store running only a dispatch app can route orders it should never have accepted. Most restaurants want one from each.
What to skip on day one
- A native mobile app. $500+/month; rarely pays back before you have strong repeat volume. Mobile web is fine to launch.
- POS Pro. POS Lite is free; upgrade only when in-person counter volume is real.
- Loyalty / subscription apps. Great once retention is proven β noise before that.
- Two delivery apps. They fight over checkout fields and show customers double pickers. One scheduling app, period.
Day one is theme + modifiers + kitchen hours + delivery + order rules. Everything else can wait 60 days.
Where to go next
- Start here β how to start a food delivery business on Shopify walks the whole setup end to end.
- Keep the margin β own Shopify store vs. food-delivery marketplaces.
- Delivery-only β run a ghost kitchen on Shopify.
- Local delivery specifics β local delivery for a Shopify food store.
- The rules layer β start with OrderRules free for kitchen hours, capacity, and cutoffs.