80% of consumers now expect same-day delivery from retailers, according to a 2025 Capital One Shopping report. And 72% say they prefer shopping with businesses that offer it. But most Shopify merchants still ship every order through a carrier — even when the customer lives 10 minutes away. Shopify local delivery setup takes about 15 minutes, costs nothing, and most store owners haven't done it.
Shopify has built-in local delivery and in-store pickup features on every plan. No apps required. No monthly fees. Yet most store owners skip past them because the setup seems confusing. Customers who can't get local delivery or pickup will buy from someone who offers it — and that someone is usually Amazon.
What Are Shopify Local Delivery and Pickup?
Shopify local delivery and pickup are two free, built-in fulfillment methods available on every Shopify plan. They appear as options at checkout when a customer's address qualifies for delivery or when a pickup location is nearby.
Local delivery means you (or your team) deliver the order directly to the customer. No carrier, no shipping label, no tracking number from UPS. You define a delivery zone by radius or postal codes, set a delivery fee (or make it free), and fulfill orders yourself.
Local pickup (also called BOPIS — buy online, pick up in store) means the customer orders online and comes to your location to collect it. You set pickup locations, estimated ready times, and any special instructions like "enter through the side door" or "call when you arrive."
Both options appear automatically at checkout when the customer's address falls inside your delivery zone or when pickup is available at a nearby location. The customer chooses which method they want — standard shipping, local delivery, or pickup — and you fulfill accordingly.
Set Up Local Delivery in 5 Steps
Go to Settings → Shipping and delivery in your Shopify admin. Scroll to the Local delivery section and click Set up (or Manage if you've opened it before).
- Select a location. Pick the warehouse, store, or address you'll deliver from. If you have multiple locations, you'll set up local delivery separately for each one.
- Enable it. Check the box that says "This location offers local delivery."
- Define your delivery zone. You have two options: a radius (e.g., 15 km from your location) or a list of postal/ZIP codes. Radius is easier for most stores. Postal codes give you more precision if your delivery area has odd boundaries.
- Set your delivery fee. Enter a flat delivery price or set it to $0 for free local delivery. You can also set a minimum order value — for example, free delivery on orders over $50, or a $5 fee for orders under that threshold.
- Add delivery instructions. This is optional but useful. Add a note like "Orders placed before 2 PM are delivered same day" or "Delivery available Monday–Saturday." These show up at checkout.
Click Save. That's it. Your checkout will now show a "Local delivery" option for any customer whose address falls within your zone.
Set Up Local Pickup in 4 Steps
Still in Settings → Shipping and delivery, scroll to the Local pickup section.
- Select a location. Choose which of your locations offers pickup. You can enable this for multiple locations — a customer will see all qualifying locations at checkout.
- Enable it. Check the box that says "This location offers local pickup."
- Set your expected pickup time. This tells the customer when their order will be ready. Options include "Usually ready in 24 hours," "Usually ready in 2–4 hours," or a custom message. Be honest here — a promise of "ready in 1 hour" that takes 6 hours erodes trust fast.
- Add pickup instructions. Tell customers where to go. "Enter through the main entrance and ask at the front counter" or "Park in spot #3 and call this number for curbside pickup." Specific instructions reduce confusion and phone calls.
Save it. Customers who select pickup at checkout won't be charged shipping. Their order shows up in your admin with a "Pickup" fulfillment tag so you can prepare it separately from shipped orders.
How Delivery Zones Work (And Where Merchants Get Stuck)
The most common setup problem is customers not seeing the local delivery option at checkout. Nine times out of ten, it's a zone configuration issue.
Radius vs. postal codes: If you use a radius (say, 20 km), Shopify draws a circle around your verified business address. Any customer address inside that circle qualifies. Simple — but it can cut through neighborhoods oddly. A customer 19 km away gets local delivery; their neighbor 21 km away doesn't.
Postal codes give you more control. You list every postal code you'll deliver to, and only customers in those codes see the option. This takes more upfront work but prevents the "I'm right on the border" complaints.
Cross-boundary issues: If you're near a state or province border, radius-based delivery may not extend across it by default. You may need to add the neighboring region manually in your Shopify shipping settings to ensure coverage.
Address verification: Shopify validates the customer's address against your zone. If the address is incomplete or formatted oddly (apartment number in the wrong field, missing postal code), the match can fail. This is frustrating for both you and the customer. Adding a note at checkout like "Make sure your full address is entered for local delivery eligibility" helps reduce failed matches.
Inventory and Fulfillment: The Parts Nobody Warns You About
Local delivery and pickup both require the item to be in stock at the specific location the customer is ordering from. This catches multi-location merchants off guard.
Say you have a warehouse in Dallas and a retail store in Austin. A customer in Austin selects local pickup at the Austin store. The product must show inventory at the Austin location. If all your inventory is tracked at the Dallas warehouse, pickup won't be available in Austin — even if you could physically move the product there.
Set up inventory tracking per location. In your Shopify admin, go to Products, select a product, and scroll to the Inventory section. Make sure each location has accurate stock counts. If you stock items at multiple locations, Shopify will route the order to the right one. For a deeper walkthrough, see our multi-location inventory setup guide.
Fulfillment workflow: When a local delivery or pickup order comes in, it shows up in Orders with the delivery method clearly labeled. For local delivery, you mark it as "Out for delivery" and then "Delivered." For pickup, you mark it as "Ready for pickup" — Shopify sends the customer an automatic notification — and then "Picked up" when they collect it.
Anyone fulfilling local orders needs access to your Shopify admin or the Shopify mobile app. If you have a delivery driver or a store employee handling pickups, give them staff accounts with fulfillment permissions. If you also sell in person at your pickup location, see our guide on setting up Shopify POS for pop-up shops.
Set Delivery Fees That Make Financial Sense
Free local delivery sounds great for customers. But if your average order is $25 and your driver spends 30 minutes per delivery, you're losing money on every drop-off.
Three models that work:
- Free above a threshold. "Free local delivery on orders over $75. $5 delivery fee for orders under $75." This encourages larger orders while covering your costs on smaller ones. U.S. click-and-collect retail sales hit an estimated $177.9 billion in 2026 — the demand is there, so use the fee structure to shape order values in your favor.
- Flat fee. A consistent $5–$10 delivery charge regardless of order size. Simple to understand and predictable for your margins.
- Free for pickup, fee for delivery. Pickup costs you nothing extra — the customer comes to you. Offering free pickup alongside paid delivery gives price-sensitive customers an option while covering your delivery costs.
55% of shoppers are willing to pay at least $5 for same-day delivery, according to Capital One Shopping data. Don't assume you need to offer it free to get orders. A reasonable delivery fee that funds a reliable, fast service beats free delivery that arrives late.
What Doesn't Work With Local Delivery (Know the Limits)
Shopify's native local delivery has real limitations worth understanding before you commit:
- No route optimization. If you have 15 deliveries to make, Shopify won't plan your route. You'll need a separate route planning tool (Google Maps, Circuit, or Routific) to sequence stops efficiently.
- Accelerated checkouts skip it. Apple Pay, Google Pay, and Amazon Pay bypass the delivery method selection screen. Customers using these won't see local delivery as an option. Only Shop Pay works with it. This catches merchants off guard when customers report they couldn't find the option.
- No split fulfillment per order. A customer can't get some items shipped and others via local delivery in the same order. It's one fulfillment method per checkout.
- No delivery time slots. You can't let customers pick a delivery window (e.g., "between 2–4 PM"). You'll need a third-party app like Zapiet or Local Delivery Plus if time slots are important to your business.
These limitations matter most for high-volume local delivery operations. If you're doing 5–10 local deliveries per day, the native setup works fine. At 30+ per day, you'll likely outgrow it and need dedicated delivery management software.
The Extra Sale at Pickup: Why BOPIS Pays for Itself
85% of BOPIS shoppers make an additional purchase when they visit the store to collect their order, according to Capital One Shopping research. That's not a rounding error — it's a built-in upsell that happens without you doing anything except having products visible when the customer walks in.
During the 2024 holiday season, curbside pickup accounted for 17.5% of all online orders and spiked to over 37% on December 23. Customers who wait too long to order for shipping switch to pickup as a last resort. Having pickup enabled means you capture those orders instead of losing them to "won't arrive in time" abandonment.
If you sell products that pair well together — coffee beans with a grinder, a phone case with a screen protector — place those add-ons near your pickup counter. The customer is already there, already bought something, and already has their wallet out. You can also capture add-on revenue online by using EasySell's one-click add-ons on your product page, so customers add extras before they even arrive for pickup.
Your First Week Checklist
Here's what to do in your first week after enabling local delivery and pickup:
- Place a test order yourself. Use a real address in your delivery zone and verify the local delivery option appears at checkout. Do the same for pickup. If it doesn't show, check your zone settings and inventory assignments.
- Brief your team. Make sure whoever handles fulfillment knows how to mark orders as "Out for delivery," "Ready for pickup," and "Delivered" or "Picked up." Walk through the Shopify mobile app if they'll use it on the go.
- Update your storefront. Add a banner or announcement bar mentioning local delivery and pickup. Customers won't know it exists unless you tell them. A simple "Same-day local delivery available" message on your homepage converts browsers who assumed they'd wait 5–7 days for shipping.
- Set realistic timing. If you can do same-day delivery for orders placed before noon, say that. Don't promise "1-hour delivery" if you can't staff it consistently. Under-promise and over-deliver.
- Monitor for the first 10 orders. Watch for address match failures, confused customers, and fulfillment bottlenecks. The first 10 orders will surface every gap in your process.
Local delivery and pickup aren't just convenience features — they're competitive advantages that most small Shopify stores leave turned off. The setup takes 15 minutes. The customers who discover they can get their order today instead of next week will remember you chose to make it easy for them.