Industry

Grocery

Grocery is the hardest consumer category to run online. Baskets are large and low margin, stock is local and perishable, and the customer notices every substitution.

A wooden crate of fresh vegetables and fruit beside a paper grocery bag, milk, eggs and jars of dry goods

Diagnosis first

Why grocery breaks ordinary storefronts

Four assumptions that hold almost everywhere else and fail here.

  1. A basket is sixty lines, not three

    Browsing, searching and adding have to be fast and repeatable. A product grid designed for considered purchases makes a weekly shop exhausting.

  2. Stock is local and changes hourly

    Availability depends on the store fulfilling, not on a company total. Showing national stock produces substitutions and refunds.

    Unified commerce
  3. Items run out between order and pick

    Substitution is normal in grocery and has to be designed — what is acceptable, who decides, how the customer is charged.

  4. Margins do not forgive mistakes

    A refunded line, a redelivery or a wasted chilled item can exceed the margin on the whole basket.

Optimise the repeat shop

Everything about grocery points the same way. The customer is rebuying a list, usually on a phone, usually in a hurry.

So previous orders, favourites, fast add and a search box that tolerates how people actually type are worth more than anything on the homepage. A grocery site that makes the weekly shop take fifteen minutes instead of twenty-five has done the single most valuable thing available to it.

Accuracy is an operations problem

No amount of integration makes a system report stock the shop floor has not counted correctly. If local accuracy is poor, the storefront will faithfully sell things that are not there.

That makes cycle counting, pick discipline and store process part of the scope of any serious grocery commerce project, even though none of it is software. We would rather say that at the start than deliver an integration and watch the substitution rate explain the problem.

Where this sits

This is unified commerce with a demanding operating model, built on a storefront from eCommerce development, and dependent on integration work for stock, picking and slot capacity. If the model is rapid delivery rather than a scheduled weekly shop, that is Q-commerce.

Focus areas

What we focus on in grocery

The handful of mechanics that decide whether online grocery works.

  1. The repeat shop Previous orders, favourites and fast add. The weekly basket rebuilt in minutes, not browsed.
  2. Local availability Stock resolved against the fulfilling store or hub, with a buffer where accuracy is weak.
  3. Substitutions Acceptable alternatives decided in advance, preference captured at order, never charged more than the original.
  4. Slots and capacity Delivery and collection windows generated from real pick and driver capacity rather than a fixed timetable.
  5. Weight-priced lines Estimated at checkout, captured at pick, reconciled automatically with finance.
  6. Allergen and nutrition data Structured across thousands of lines and kept current from supplier data rather than by hand.

Platforms

Where we build.

The weekly shop is the product

Grocery customers are not browsing. They are reconstructing a list they have bought before, under time pressure, usually on a phone. Previous orders, favourites and fast search matter more than merchandising, imagery or any homepage decision. Optimise the repeat shop and the rest of the numbers follow.

Talk through your model

Scope

What a build includes.

  • Repeat-shop mechanics

    Previous orders, favourites, one-tap re-add and fast search. Most grocery revenue is the same basket repeated, so this is the primary journey.

  • Location-resolved availability

    Stock shown against the store or hub that will actually fulfil, with a buffer where accuracy is weak.

  • Substitution rules

    Acceptable alternatives per line, customer preference captured at order, and pricing that never charges more for a substitute.

  • Slot booking with real capacity

    Delivery and collection windows generated from picking and driver capacity rather than a fixed timetable.

  • Weight-based pricing

    Items sold by weight priced at pick, with the authorised amount and the final charge reconciled properly.

  • Allergen and nutrition at scale

    Structured across thousands of lines, kept current from supplier data rather than maintained by hand.

Frequently asked questions

Can Shopify or Adobe Commerce run a grocery operation?

They can run the storefront, checkout and payments well. Slot capacity, location-level stock, substitutions and pick integration are built on top, either with extensions or custom services. The platform is rarely the limiting factor — picking capacity and stock accuracy usually are.

How accurate does local stock need to be?

Accurate enough that substitutions stay within what customers tolerate. That means measuring your current accuracy before designing against it, and holding a buffer where it is weak. Showing stock you cannot pick converts well and disappoints reliably, which is the worst combination.

How should substitutions work?

Decided in advance, not improvised at pick. Acceptable alternatives defined per line or category, the preference captured at order, and a rule that the customer is never charged more than the original. Clear communication at the point of substitution removes most of the complaints.

How do you price items sold by weight?

Authorise an estimated amount at checkout and capture the actual at pick, within a tolerance the customer agreed to. The reconciliation has to flow to your finance system automatically, or the admin cost per order removes the margin.

Should we launch across all stores at once?

No. One store, one catchment, long enough to learn your real pick times, substitution rate and stock accuracy. Those three numbers determine whether the economics work, and they cannot be estimated reliably in advance.

Want to talk through Grocery for your store?

Tell us where it hurts. We will tell you honestly whether we are the right people for it.

Talk to an expert Book 30 minutes