All guides
Warehouse guide

Warehouse cycle counting with a phone and Google Sheets

Replace the annual stock-take with small weekly cycle counts: scan shelf and item codes into a Google Sheet, then read the variance.

9 min readUpdated 4 October 2026

Short answer

Warehouse cycle counting with Google Sheets means dividing the site into count zones, labelling shelves and bins as well as items, and scanning each count into an append-only log of one row per scan.

A free Google Form linked to a Sheet works for a small stockroom, but it has no camera scanner so barcodes are typed by hand, and dead zones cause submissions to be lost silently.

A scanner link such as QR to Sheets holds scans on the device and syncs when signal returns, which matters in metal-racked buildings where dead spots are unavoidable.

Most small warehouses do one full stock-take a year, it takes a weekend, everyone hates it, and the numbers are stale within a fortnight. Cycle counting replaces that with small, frequent counts of part of the warehouse, so the register stays roughly true all year and nobody loses a Saturday.

The reason teams do not adopt it is friction. If a count means a clipboard and then an evening of typing, it will not survive contact with a busy week. Removing the transcription step is what makes the habit stick.

Why the annual stock-take is the expensive option

How do I run cycle counts for free?

A Google Form linked to a Sheet, with fields for location, item code, and quantity. It costs nothing and it works for a small stockroom. Start here if that is you.

Two things go wrong at warehouse scale. There is no camera scanner, so someone reads a barcode and types thirteen digits, per item, which is where the errors come from. And dead zones exist in every warehouse — a submission with no signal is lost rather than queued, and you find out when the numbers do not add up.

Scanning into a Sheet instead

The alternative is a scanner that writes rows directly. QR to Sheets does this, so treat this section as interested but specific: you connect a Sheet, create a scanner link, and whoever is counting opens the URL on their phone. Every scan appends a row, and scans are held on the device and synced when signal returns — which is the part that matters in a metal-racked building. The warehouse inventory scanning page shows the full setup.

Google Forms / Apps Script (DIY) compared with QR to Sheets
CapabilityGoogle Forms / Apps Script (DIY)QR to Sheets
CostFreeFree to 300 scans, then $7 per device per month
Barcode captureRead and type by handCamera scan
Dead zonesSubmission lostBuffered on device, syncs later
Two counters at oncePossible, no attributionOne device licence each, attributed
Duplicate suppressionNoneCode must leave frame before re-accepting
Where the data livesYour Google SheetYour Google Sheet

Reading the variance

The count log is raw data; the value is in the comparison. Keep the scan log append-only and build the analysis on top of it.

Store barcodes as text, not numbers. Long numeric codes lose leading zeros and can hit float precision problems, which produces phantom variances that waste a morning.

Making the habit survive

Step by step

  1. 1

    Split the warehouse into count zones

    Divide by aisle, rack, or bin group so one zone is a 15 to 30 minute job. The entire point of cycle counting is that no single count is daunting enough to be postponed.

  2. 2

    Label the locations, not just the items

    Print a code for every shelf, bin, and rack face. Counting is then scan-location, scan-items, move on — and a variance can be traced to a place rather than a vague area.

  3. 3

    Set the rotation

    High-value or fast-moving zones weekly; everything else monthly or quarterly. Write the schedule down. A rotation that lives in someone's head stops happening the first busy week.

  4. 4

    Count by scanning into a Sheet

    One row per scan: timestamp, location, item, who counted. Do not type quantities into a form — scan each unit, or scan the item once and enter a count beside it.

  5. 5

    Review variance the same day

    Compare counted against expected while the picker who moved the stock is still on shift and can remember. A variance reviewed a month later is unexplainable.

Frequently asked questions

What is cycle counting?+

Counting a small part of your inventory on a rotating schedule rather than counting everything once a year. High-value or fast-moving stock is counted more often. The register stays approximately accurate all year, and no single count is disruptive.

Can I do cycle counting in Google Sheets?+

Yes, and for small operations a Sheet is genuinely enough. Keep an append-only log of one row per scan, then compare counted against expected with a pivot table. The hard part is not the spreadsheet, it is capturing barcodes without typing them.

How do I scan barcodes into Google Sheets in a warehouse with no signal?+

You need something that buffers locally. A Google Form submission with no connection fails and is lost. A scanner that saves each scan to the device first will keep working through dead zones and sync when signal returns.

How often should I cycle count?+

Weekly for high-value or fast-moving zones, monthly or quarterly for the rest. The right answer is whatever rotation you will actually sustain — a monthly count that happens beats a weekly one that does not.

Do I need a dedicated barcode scanner gun?+

Not for counting at this scale. A phone camera reads Code 128, EAN-13, UPC-A and the other common formats perfectly well. A gun is faster for sustained high-volume receiving, but it is not the barrier to starting.

Try it on your own Google Sheet

Connect Google, create a scanner link, and share the URL with your team. The free tier covers 300 scans, and nobody you share it with has to install anything.

Start for free

No credit card required

Keep reading