Local Pickup at Checkout: The Method Selector That Shows to the Wrong Shoppers
A merchant with one physical store in Colorado enables local pickup, and a shopper in New York sees Pickup in Store at checkout before entering any address. The shopper cannot be less interested in picking something up from Colorado, but the option is there anyway, sitting next to shipping, looking like a real choice. Shopify shows pickup before the shipping state is known, and no setting in the admin changes that. The method selector is the problem, and the fix lives outside the admin.
What changed in the checkout
Shopify updated the local pickup experience in checkout so the options are easier to scan. Previously, checkout listed shipping and local pickup options vertically, creating a long scrollable list that was hard to read on complex checkouts with multiple pickup locations. Checkout now displays the first available local pickup location with an option to view and select additional locations, and shipping and local pickup options appear inline. Delivery method selection is determined by whether items in the cart are eligible for shipping or local pickup, and local pickup only appears when items are pickup eligible, including when there are available pickup locations in the buyer country. Selecting pickup shows the nearest location with item availability, and a modal displays the full list. No action was required to display the updates, which is the good news and the bad news: the layout improved and the underlying logic did not change.
The mechanics underneath are solid. Local pickup is built into every Shopify plan at no extra cost and takes about ten minutes to set up: enable it on a location, set pickup hours and instructions, and the option appears at checkout for products stocked at that location. When the shopper selects it, the shipping cost is removed, or replaced with a pickup fee if one is configured, and the order is marked for pickup in admin. Shopify sends the pickup notification automatically when staff mark the order ready. The failure is not in the machinery. It is in who sees the option.
The geography problem nobody fixed
The Community thread from June 2025 is still open, and the complaint is precise: Shopify appears to show the pickup option before and independent of the chosen shipping location. A merchant in Colorado wants pickup to appear only for local customers, because a shopper in New York could not be less interested in picking something up from Colorado. The common pickup apps do not offer geotargeting for this use case, and no confirmed implementation has been reported. The workarounds are all outside the admin: a geolocation app or script that detects the shopper IP and flags the cart, or on Plus, a Shopify Function that hides the delivery method based on cart attributes or line item properties. If the shipping state is not Colorado, hide pickup. If the cart does not carry a local pickup tag, skip it. The cheaper mitigation is copy: a clear note near the shipping options that pickup is Colorado only, and showing the store distance before checkout so the shopper can rule themselves out. None of this is elegant. All of it beats showing a New York shopper a pickup option in Denver and letting them discover the problem after they have paid.
There is a second trap in the same area. For subscription checkouts, when customers choose local delivery or pickup, the chosen method applies to the entire order, and mixed delivery methods are not supported. A subscriber who wants pickup for the subscription and shipping for a one time add on cannot have both. Test that combination before you advertise pickup to subscribers, because the checkout will refuse it and the error will not say why.
The setup that actually works
Enable pickup only on locations that are genuinely enabled for online fulfillment, because a store that exists in admin but is not wired into online orders never shows pickup at all, and the merchant spends a week debugging a setting that was never turned on. Set the distance settings honestly: a pickup radius that is too generous shows the option to shoppers who will never drive it, and a radius that is too tight hides it from the suburb that would use it. Review your checkout extension configuration after the layout update, because Shopify itself warns that customizations may not display correctly with the new inline format. And if you are on Plus, write the Function that hides pickup by state before you need it, not after the first support ticket from a shopper in another state who selected pickup by accident and now wants the order shipped.
Keep reading: Checkout gift options and delivery dates, Checkout currency switching friction, Shopify Markets checkout settings.
Frequently asked questions
How does local pickup appear in Shopify checkout now?
Checkout shows the first available local pickup location inline, with an option to view and select additional locations in a modal. Shipping and local pickup options appear inline for easier selection. The change rolled out with no action required from merchants.
When does local pickup show up at checkout?
Pickup appears only when items in the cart are pickup eligible, including when there are available pickup locations in the buyer country. The variant has to be in stock at a location with pickup enabled, and the customer address has to be close enough to that location under the merchant distance settings.
Why does my store show pickup to shoppers who live far away?
Shopify shows the pickup option before and independent of the chosen shipping state, which merchants have reported in the Shopify Community since June 2025. There is no native geotargeting for pickup. Workarounds are a geolocation app that flags the cart, or on Plus, a Shopify Function that hides the method when the shipping state does not match.
Does local pickup cost the shopper anything?
Shopify sets local pickup to free by default. You can configure a pickup fee if you want one, and selecting pickup removes the shipping cost from the order. The customer shipping address becomes the pickup location address in the order, and the order is marked for pickup in admin.