MLMaxim Lazovsky Head of Operations
ENRU

All projects

Gostockup: 82 hours to 19

34 projects without a single day of downtime: how we rebuilt operations at an online grocery

Gostockup sells Eastern European food from a store in Oceanside, New York: 4,000+ products, local delivery, and shipping to every state, Hawaii included. Here's what we rebuilt, in the order we did it.

The start

The fourth person on the team

When I joined in February 2025, the team was a project manager, a developer, a photographer and me.

First three weeks

The catalog

Thousands of products, duplicates and even triplicates, names copied from supplier invoices. We cleaned it up and wrote a naming standard: clear retail titles, weight in both ounces and grams.

What surfaced

The catalog was only the surface

Stock lived in the parent company's software, supplier payments were tracked by hand, and nobody could say how long an order took to go out.

The conversation

“Are you ready to take responsibility for all of it?”

I told the owners we were moving too slowly. I said yes, on one condition: specialists for what I'm not best at, starting with SEO.

The principle

Rules first, then systems

Write down the statuses and conditions, turn them into requirements, and sign off on the result with each team.

Business impact

What it did for the business

We never put a dollar figure on the savings. I work from losses: I look for where the company is losing money and time, and remove it. Here is what can be checked.

Order cycle

Faster without hiring

The median order went from 82 to 19 hours with the same warehouse team.

Shipping

Fewer reshipments

A spoiled-product complaint used to come in about every 20th order, now about every 35th. A third reshipment puts an order in the red, so we are dropping the riskiest products.

Inventory

Not selling what we don’t have

Retail and wholesale no longer add up into one number in Shopify, so the site doesn’t sell stock that isn’t on the shelf.

Assortment

Smaller catalog, same profit

We removed products that weren’t selling and profit didn’t dip. A yearly analysis shows which products are in the red zone.

Results

How much less

“Where is my order?” tickets after our own tracking page, estimate
−98%
Time to clean one tag across ~5,000 products: 4h → 10m
−96%
Order cycle, median order to fulfillment: 82h → 19h
−77%
Product condition complaints every 20th order → every 35th, estimate
−43%

Internal company data and estimates.

How each number was measured

Stories

Four problems, one structure

Problem → my part → solution → rollout → result.

Inventory

Shopify was selling stock we didn’t have

Problem
LodDepot keeps one stock count, but it was sending it to Shopify twice: 5 units for retail and 5 for wholesale. Shopify saw 10. When the 5 retail units sold out, the site kept selling the wholesale ones, which were no longer on the shelf.
My part
Found the cause of the mismatch and proposed splitting the sales channels.
Solution
Retail sells only through Shopify, wholesale through a separate LodDepot site on its own subdomain.
Rollout
Spec for configuring LodDepot and Shopify, checked on real products.
Result
Shopify no longer adds the channels together, and the site doesn’t sell what isn’t on the shelf.
Shipping

Ten zones instead of five

Problem
Carriers split the country into five zones, but what matters for perishables is how many days they spend in a truck. A spoiled-product complaint came in about every 20th order, and a third reshipment puts an order in the red.
My part
Initiative, the zone logic and the blocking rule, the spec, checking the result.
Solution
10 zones of our own by days in transit. The site won’t let you order perishables to a ZIP code where the chance of them arriving spoiled is over 10%.
Rollout
The rule works in the cart: the product is blocked for risky ZIP codes.
Result
A complaint now comes in about every 35th order. We are removing the riskiest products from the assortment.
Warehouse

Stocktaking starts the night before

Problem
Counts showed mismatches that weren’t real: we were counting products sitting on packing tables, about to ship.
My part
Described the cutoff process and assigned one owner per warehouse zone.
Solution
The evening before, packing stops at a set time, tables are cleared, unshipped items go back to the shelves, and one person owns each zone.
Rollout
A warehouse procedure before every stocktake.
Result
Only real mismatches stay in the report.
Economics

Free shipping: do the math first

Problem
Free shipping looks like an easy win until you look at the margin.
My part
The whole model, from pulling the data to the conclusion.
Solution
12,123 paid orders, UPS and FedEx rates across 11 zones and 5 weight tiers, 1,941 abandoned carts. The model compares 6 thresholds in 3 scenarios.
Rollout
We are testing the threshold on a group of customers.
Result
The test is running. We’ll pick the threshold based on its results.

Trade-offs

Where we had to give something up

Every decision had a price. Here is what we chose and why.

Decision Cost Why
No perishables to risky ZIP codes We lose some orders. A third reshipment puts an order in the red, and the customer is unhappy anyway.
Dropping the riskiest products Less choice for customers. They account for most reshipments and complaints.
Free shipping only after a test Slower than switching it on for everyone. We don’t risk margin on every order until the numbers hold up.
Moving to LodDepot without a shutdown Longer and harder than closing for a couple of days. Not a single day without sales.
A catalog a third the size Fewer products on the site. A simpler warehouse, less cash in stock, and profit didn’t dip.

How it works

The order path and how the systems connect

Two simplified diagrams. I wrote the rules for how orders and data move through these steps. Engineers built the integrations.

Order path: from payment to carrier

  1. Order website or register, Shopify
  2. Zone check perishables blocked for risky ZIP codes
  3. Stock LodDepot deducts the item
  4. Pick list QR in the warehouse app (beta)
  5. Picking scanning by bin location
  6. Packing cold pack for perishables, order photo
  7. Label ShipStation, tracking number to Shopify
  8. Carrier end of our cycle

The 19-hour median is the path from step 01 to step 08. Customers see every stage on the tracking page.

How the systems connect

gostockup.com → retail orders
In-store register → in-store sales
LodDepot ⇄ stock · wholesale on its own subdomain
Zendesk ← order questions
Shopify orders, catalog, customers
Warehouse app ← orders · → statuses
Tracking page ← warehouse statuses
FedEx and UPS ← parcels via ShipStation
ShipStation ← orders · → tracking number

Simplified: the main data flows only, no technical detail.

Order tracking

98% fewer “Where is my order?” tickets

Customers used to write to support just to find out where their package was. I worked out how the tracking page should work, and engineers built it: enter your email and order number and see which stage the order is at.

Statuses come straight from the warehouse. Once an order is packed, the packer takes a photo, so the customer sees their box before it arrives.

Five steps: confirmed → processing → ready → out for delivery → delivered.

Gostockup order tracking page: five statuses and a photo of the packed order
A real order, customer details hidden
Prototype of the Gostockup seasonal rewards program
Working bilingual prototype. Not launched yet

Retention

Shopping that leaves a mark

Bringing a customer in once doesn't make them a regular. So I designed a seasonal rewards program: every purchase moves the customer along a season map, and each checkpoint unlocks a gift from our own shelves. Like a stamp on a paper card from your favorite corner shop.

Before the prototype I worked out what usually surfaces after launch: checkpoint economics, gift costs, what happens on a refund, how to store progress in Shopify and how the warehouse packs gifts with the order.

12 checkpoints per season · two reward tracks · bilingual prototype

Before → after

February 2025 vs. October 2026

What operations looked like when I joined, and what works today. This is the sum of separate projects; each one’s dates are in the timeline below.

Area February 2025 October 2026
Inventory In the parent company's software, in fractions of a case → LodDepot set up for us, counted in units, retail and wholesale separate
Catalog Duplicates, inconsistent names, ~7,900 products → 4-level category tree, ~2,500 active products, one-click tools
Warehouse Manual picking, no way to measure it → QR pick tickets, bin locations, order logs, box control
Customer updates Support answered “Where is my order?” by hand → Tracking page on real warehouse statuses, 98% fewer tickets
Shipping risk 5 standard carrier zones for perishables → 10 zones of our own and ZIP blocking, a complaint every 35th order instead of every 20th
Payments One “Paid” status for every supplier → Per-supplier terms, release rules, mixed containers
Order cycle 82 hours median → 19 hours median
Decisions Intuition and habit → Models built on 12,000+ real orders

Timeline

What we built first, and what it unlocked

Each project made the next one possible.

  1. Feb 2025 Catalog deduplication, start of the rebuild Done
  2. Spring – Summer 2025 Shopify transition, catalog standards, store policies Live
  3. 2025 Tracking page, 10-zone shipping risk model, ZIP rules Live
  4. Dec 2025 – Jan 2026 Move to LodDepot Live
  5. Jan – Feb 2026 Warehouse app with QR and packing workflow Beta
  6. May – Jun 2026 Seasonal rewards program Prototype
  7. May – Sep 2026 Category tree, category builder, tag cleanup, assortment cut Live
  8. Jul 2026 Unit-based inventory Live
  9. Sep – Oct 2026 Supplier payment tracking, mixed containers, subscription prep In progress
  10. Oct 2026 Free-shipping economics model Analysis ready

How projects connect

Problem → quick fix → real fix

Each early step led to a system-level fix.

Problem First step System step Effect
Noisy catalog Deduplication and title rules Category tree → builder → tag cleanup Stable products, tags and collections
Stock doesn't match Inventory review across stores LodDepot → unit-based → wholesale rules Fewer rounding and double write-off errors
Warehouse can't be measured Order statuses and tracking Warehouse app, QR, logs, box count Fulfillment visible to team and customers
Products arrive damaged 10 shipping zones of our own ZIP and perishable rules Risky combinations blocked before payment
Unclear shipment readiness PO, invoice and payment rules Per-supplier payment tracking → mixed containers → shipping Payment terms checked before release
Customers don't come back Rewards program economics Two reward tracks, prototype A clear reason to return
Expensive shipping Local delivery cost analysis Margins, abandoned checkouts, threshold model Threshold and carrier chosen on data

I find the problem, write the business logic and requirements, run the launch and sign off on the result. Engineering, marketing and support do their own parts.

Methodology

How we measured

These are internal numbers: the company doesn’t publish them and they haven’t been audited. For each one, here is what we measured, where the data comes from, and what I did versus others.

Order cycle: 82h → 19h

What
Median time from when an order comes in to when it’s handed to the carrier. The whole path, not just packing.
Source
Shopify: order creation time and fulfillment mark, all orders in the month.
Period
December 2025, the first month we measured, and September 2026.
My part
Found where orders sat, wrote the rules and specs, tested and signed off. Engineers wrote the code, the warehouse packed.

“Where is my order?”: −98%

What
Customer requests asking about order status.
Source
Team estimate. Before the tracking page launched in July 2025, these came in through the site, email, social and phone, and nobody counted them in one place.
Now
All requests go into Zendesk. Over the last four months the number of these questions keeps going down.
My part
Initiative, status logic and the spec for the tracking page, testing and sign-off.

Product condition complaints: −43%

What
Share of orders with a complaint about spoiled or damaged-in-transit products.
Source
Team estimate: before the 10 shipping zones, a complaint came in about every 20th order, now about every 35th. Complaints are now tracked in Zendesk.
My part
Initiative, the logic of 10 zones by days in transit and the rule blocking perishables for risky ZIP codes, the spec, checking the result.

Tag cleanup: 4h → 10m

What
Time to remove or change one tag across ~5,000 products.
Source
My own measurement. At first it was done by hand. Then a tool was built from my spec, but it hit API limits and ran slowly. I pushed the developer to find a faster way, and it came down to 10 minutes.
Why
It’s a regular task: discounts run on tags. For example, the tag discount:15 gives a product 15% off.

The fastest way to reach me is LinkedIn

My full career and notes on the work are there too

Message me on LinkedIn