Inventory management app for Shopify apparel brands
Restoc is a lightweight inventory app for Shopify apparel and accessories brands, built for the store where one style is fifteen SKUs and the black medium always goes first. It is made to track every active size and colourway separately, set a reorder point per SKU from your sales velocity and the lead time you enter, and alert you before the gap opens.
How apparel brands watch stock today, and where it breaks
An apparel catalogue does not really have products. It has grids. One tee in five sizes and three colourways is fifteen SKUs. Add a second fit and a seasonal colour, and a range of sixty styles is several hundred variants. Each one sells at its own speed.
Most brands at this size watch that grid three ways at once. The Shopify admin inventory list, sorted by quantity, scanned on a Monday. A season tab in a spreadsheet, updated from an export when someone remembers. And a message from whoever packs the orders: the sand medium is nearly gone.
Four things go wrong with that, and they go wrong specifically in apparel.
- Style totals hide the size curve. A style showing 119 units on hand reads healthy. If 46 of those are extra small and 7 are medium, the style is already broken. You keep paying to advertise a product nobody can buy in their size.
- The cadence is wrong. You look weekly. Stock moves hourly. A creator post or a payday weekend can empty the middle of the curve in two days. You find out when a customer emails asking when the medium is back.
- Lead times are not uniform. A reprint on a carryover tee from a domestic printer is a short wait. A new cut-and-sew order from an overseas factory is a long one, before shipping and customs. The reorder decision has to be made while the SKU still looks fine on the shelf, which is exactly when nobody is looking at it.
- Colourways rot at different rates. Black core sells every week of the year. A seasonal colour sells hard for three weeks, then stops. One average across the grid tells you nothing useful about either.
The actual job is small and specific. For every active size and colourway, know how many days of cover are left. Know whether you have crossed the point where ordering today still lands stock before zero. That is the job Restoc is built to do, and it is the only job it does.
One thing to be plain about before you read on. Restoc is not open yet. It is in build, the waitlist is how apparel brands get in first, and everything below describes what it is built to do rather than a tour of a live install.
If stock lives in a spreadsheet today, there is a sibling page on what changes when an alert does the watching, and a guide on stopping repeat stockouts on your best sellers.
The workflow, from connect to supplier order
- Connect the store
Restoc installs through Shopify's OAuth flow. It pulls your catalogue, your inventory levels and roughly 30 days of sales history at install, then keeps up with webhooks plus a scheduled sync job. Every active variant becomes its own tracked SKU, so each size in each colourway gets a row of its own. It is a web app: no mobile app, no browser extension.
- Enter a lead time per SKU
You know your suppliers better than any algorithm does. Enter the lead time in days for each SKU. The screen-printed carryover tee and the imported knit are then treated as the different problems they are, on your number rather than a guessed one.
- Choose a sales velocity window
Pick 7, 14 or 30 days. A 7-day window keeps up with a drop that is selling fast. A 30-day window keeps a steady core basic from triggering on one quiet week. On Starter and Growth the window is a single store-wide setting. Pro adds custom reorder rules, which is a per-SKU override of that window.
- Let the reorder point calculate itself
The reorder point engine combines the velocity window with your per-SKU lead time. It is implemented as a tested pure function. In plain terms, the same inputs always produce the same number, including the awkward cases: a SKU with no sales, a SKU with barely any history, a SKU already at zero.
- Read the grid on one screen
The dashboard shows current stock, days of inventory remaining and reorder status for every active SKU. Your own SKU code is stored alongside the variant title, so the row matches what you put on a factory order. The medium and the extra small sit on separate rows, each with its own figures.
- Take the alert
When a SKU crosses its reorder point, Restoc emails you. On Growth and Pro you can also point alerts at a Slack incoming webhook. Alerting happens per SKU, so the trigger is tied to the individual size and colourway rather than to the style as a whole.
- Check what actually went out
The dashboard keeps a recent alerts panel: which SKU crossed, which channel the alert used, when it was triggered and whether it has been delivered yet. Delivery runs through an idempotent background job, so a crossing is recorded once and a failed send is retried rather than duplicated.
- Work the weekly report
Once a week you get a report, viewable in the app and exportable as CSV, listing every SKU below its reorder point with a suggested order quantity. That is the file you shape into the order you send your supplier.
One style, six rows: what per-SKU tracking shows (illustration)
| SKU | Stock on hand | Sales per day | Days of inventory remaining | Reorder status |
|---|---|---|---|---|
| Heavyweight tee, black, S | 46 | 0.9 | 51 | OK |
| Heavyweight tee, black, M | 7 | 4.2 | 2 | Below reorder point |
| Heavyweight tee, black, L | 21 | 3.1 | 7 | Below reorder point |
| Heavyweight tee, black, XL | 33 | 1.0 | 33 | OK |
| Heavyweight tee, sand, M | 12 | 2.6 | 5 | Below reorder point |
| The same style, as one total | 119 | 11.8 | 10 | Reads fine, is not fine |
Why this shape fits apparel
The size curve is visible, not averaged
Days of inventory remaining and reorder status are calculated per active SKU. The medium and the extra small are never blended into one number that flatters both, so a broken size shows as a broken size rather than as a healthy style.
Colourways get their own math
The same style in black and in a seasonal colour sell at different speeds. Because each variant carries its own velocity and its own reorder point, the fast colour triggers when it should and the slow one stays quiet.
Each row carries your own SKU code
Restoc stores your SKU code with the variant title, current stock, lead time and computed reorder point. The row on screen reads like the line you put on a factory order sheet, not like a product page title you have to translate.
The first weeks are not blank
The install backfills about 30 days of sales history, so the velocity window has something to work with instead of waiting a month for orders to accrue. A SKU with no sales in the window is handled as a defined case, not as a guess.
Drops and carryover can be measured differently
On Starter and Growth the velocity window is one store-wide choice of 7, 14 or 30 days. Pro adds a per-SKU override, so the SKUs in a new drop can run on a 7-day window while core basics sit on 30 in the same catalogue.
Long lead times stop being an afterthought
Lead time is a per-SKU input on every plan. A SKU with a long production and shipping wait crosses its reorder point far earlier than a quick reprint does, so the alert arrives while ordering still changes the outcome.
The alert reaches the person placing the order
Email alerts are on every plan, sent to the address you set in alert settings, so the founder or the buyer gets the crossing. Growth and Pro add a Slack incoming webhook for the channel where production chat already happens, and the dashboard shows what fired and whether it was delivered.
The weekly report is a buying list, not a dashboard tour
Every SKU below its reorder point with a suggested order quantity, exportable as CSV with the same figures the in-app report shows. That is the shape of a factory order sheet already, so there is no retyping the grid by hand.
Variant counts, and which plan that lands you on
Apparel SKU counts run ahead of what a founder expects. The multiplier is built into the product. Do the arithmetic on your own range before you pick a plan: styles, times sizes, times colourways, counting only what is active.
Sixty live styles in five sizes and three colourways is around 900 variants. That sits inside Growth: $59 a month, up to 1,000 tracked SKUs. A dozen styles on the same grid is 180 variants, which fits Starter at $29 a month and 200 tracked SKUs. A deep apparel and accessories catalogue runs to Pro: $99 a month, 2,000 tracked SKUs.
Paid a year at a time, those are $290, $590 and $990. Ten months' price for twelve.
Every plan carries a 60-day free trial, with that plan's own feature set. The trial is built so at least one full weekly reorder cycle completes before the first charge. For an apparel brand that length matters, because 60 days covers more than one reorder cycle and usually a drop as well.
Billing runs on your Shopify invoice rather than a separate card payment, so the subscription sits with the rest of your store's app charges.
Honest limits before you count
- One location per plan. Split stock between a warehouse and a retail unit and Restoc watches one of them, rather than reconciling both.
- Slack alerts start at Growth. Starter sends reorder alerts by email only. If a production channel is where your team actually reads things, that points at Growth or Pro.
- The per-SKU velocity override is a Pro feature. On Starter and Growth the window is one setting for the whole store.
- The SKU caps are enforced on the server at sync time. They are not a soft warning. As your active SKU count approaches the cap, the dashboard and billing settings show current usage against the limit with an upgrade prompt, so a growing grid is a decision you make rather than variants quietly dropping off.
Our pricing page lays out monthly and yearly figures for all three tiers side by side. There is a separate page on the 60-day trial and when the first charge lands, and another on catalogues in the 1,000 to 2,000 SKU range if that is where you are heading.
Plans, read as variant counts
Starter, $29 / month or $290 / year
Up to 200 tracked SKUs and one location. Around a dozen styles in a five-size, three-colourway grid. Includes a reorder point per SKU from your sales velocity and lead time, a store-wide velocity window of 7, 14 or 30 days, email alerts when a SKU crosses its reorder point, the weekly reorder report with CSV export, and the days-of-inventory dashboard. Billed by Shopify on your Shopify invoice. 60-day free trial.
Growth, $59 / month or $590 / year
Everything in Starter, up to 1,000 tracked SKUs, one location, plus Slack alerts through an incoming webhook alongside email. As an illustration, a sixty-style range across five sizes and three colourways is roughly 900 variants, which fits inside this cap. 60-day free trial.
Pro, $99 / month or $990 / year
Everything in Growth, up to 2,000 tracked SKUs, one location, plus custom reorder rules: a per-SKU sales velocity window override. For a deep apparel and accessories catalogue where the grid has already multiplied past a thousand rows. 60-day free trial.
Questions
Does it track each size and colourway separately, or just the product?
Separately. Every active variant is its own tracked SKU, with its own sales velocity, its own reorder point and its own row on the dashboard showing current stock, days of inventory remaining and reorder status. A style total is never what triggers an alert.
How does it handle long overseas production lead times?
Lead time is a value you enter per SKU, in days, on every plan. A SKU with a long production and shipping wait crosses its reorder point much earlier than a quick domestic reprint, because the reorder point is calculated from your lead time together with the sales velocity window.
Can I use a shorter velocity window for a new drop?
On Starter and Growth the window is one store-wide setting of 7, 14 or 30 days, so you pick the one that suits most of the catalogue. Pro adds custom reorder rules, a per-SKU override of that window. That is how you keep new-drop SKUs on 7 days while core carryover basics sit on 30.
Do I get Slack alerts on the cheapest plan?
No. Slack alerts through an incoming webhook are part of Growth at $59 a month and Pro at $99 a month. Starter sends reorder alerts by email, and email alerts are included on every plan. Each plan comes with its own 60-day free trial carrying that plan's features, so a Growth trial includes Slack.
What do I see in the first week after connecting?
The install pulls your catalogue and inventory levels and backfills roughly 30 days of sales history, so days of inventory remaining and reorder points have something to stand on rather than starting from zero. From there webhooks and a scheduled sync keep the numbers current, and alerts fire as SKUs cross their points.
How many SKUs will my apparel catalogue actually need?
Multiply live styles by sizes by colourways. Twelve styles across five sizes and three colourways is 180 variants, which fits Starter's 200 SKU cap at $29 a month. Sixty styles on the same grid is about 900, which fits Growth at $59 a month and up to 1,000 tracked SKUs. The caps are enforced at sync time, and the app shows your usage against the limit as you get close.
I hold stock in a warehouse and a store. Does it cover both?
Each plan tracks one location today, so it watches one of them rather than combining the two. If split stock is central to how you operate, that is worth knowing before you join the waitlist.
How do I sign in, am I billed by card, and is there a mobile app?
You sign in with an email address and password. The subscription is billed by Shopify on your Shopify invoice, not as a separate card payment. Restoc is a web app, with no mobile app and no browser extension; the store connection is made through Shopify's OAuth install flow. The app runs on Amazon Web Services and alert emails are sent through Amazon SES.