Ask someone how a receipt scanner works and they'll describe the visible half: point the camera, the store and the amount appear, done. The half nobody asks about is where that reading happens. Because a photo of a receipt has to be turned into text and numbers somewhere, and there are only two places it can be: on a company's servers, or on the phone in your hand. Most apps pick the first. Starlog picks the second — and it's not a detail, it's the difference between a scanner that works in a basement parking garage and one that doesn't, and between a receipt that's shipped off to be read and one that never leaves to be.
This is the plain version of what that choice means: the two places a receipt can be read, why I put the reading on the device, and where the honesty lines are — because "on-device" is a real advantage, not a magic word.
A receipt has to be read somewhere
The reading itself is OCR — optical character recognition — the step that turns pixels of a receipt into characters a program can work with. That step needs computing power, and there are two designs for where to spend it.
The common one is cloud OCR. You photograph the receipt, the app uploads the image to the company's servers, a model there reads it, and the store name and amount come back to your screen. It feels instant on good Wi-Fi, and it lets the app run heavy models it could never fit on a phone. The catch is baked into the design: to read your receipt, the app has to have your receipt, on its infrastructure, at least for as long as the reading takes.
The other design is on-device OCR. The reading model lives on your phone, and the recognition runs right there — the image is turned into text without a round trip to anyone's server. That's the design Starlog uses: OCR runs on-device via Google's ML Kit, drafting the store name and amount from the photo you just took, on the hardware you're holding.
What on-device actually buys you
Two things, and they're both concrete.
It works with no signal. This is the one you feel first. A cloud scanner is only as good as your connection at the moment you're standing at the counter — and the places you collect receipts are exactly the places signal goes to die: the underground car park, the airport gate, the hill town, the trade-show hall with three thousand phones fighting for one tower, the flight itself. Because Starlog does the reading on the phone, capture doesn't wait for a network. You photograph the slip, the OCR drafts the store and amount on the spot, you confirm it, and the receipt is logged. The upload to your Drive happens later, on its own — Starlog marks it pending and syncs it when you're back online, without duplicating anything you already saved. The reading and the syncing are two separate jobs, and only one of them needs the internet.
The reading stays on your device. With on-device OCR, the recognition happens without your receipt image being sent somewhere to be read. For a personal lunch that's whatever; for a business that runs its numbers through an app, "which of my documents get uploaded, and to whom" is a fair question to be able to answer cleanly. Here the answer is: the reading step doesn't upload the image at all.
Where the honesty line is
On-device is a genuine advantage, so let me be precise about what it is and isn't — because vague privacy claims are how apps lose your trust.
On-device OCR means the reading runs on your phone. It does not mean nothing ever leaves your phone, because the whole point of Starlog is that your receipts get saved somewhere durable. Here's the actual shape:
- The reading happens on the device. ML Kit turns the photo into a store name and an amount without shipping the image off to be recognised.
- The saved receipt goes to a place you own. The image files into your own Google Drive, in a per-business year-and-month folder — not into a vendor database you can't see. If you ever leave Starlog, the receipts are already sitting in your Drive.
So the honest sentence is: your receipt is read on your phone, and stored in your Drive. Not "nothing is ever transmitted" — that would be a lie the moment sync runs — but "the reading isn't outsourced, and the storage is yours." Those are the two questions worth asking any receipt app, and they have clean answers here.
On-device isn't the same as flawless
The other thing "on-device" doesn't mean is "perfect." Running the model locally changes where the reading happens, not how hard receipts are to read. A faded thermal slip, a crumpled bill, a total that's smaller in print than the subtotal above it — OCR stumbles on those whether the model runs in a data centre or in your pocket. That's why Starlog treats OCR as a draft, not a verdict: it pre-fills the store name and the amount, and you glance at the amount and confirm it. The date and category are yours to set — the app doesn't guess them off the slip.
None of that is a knock on doing it locally. It's just the same rule that applies to every scanner: the machine reads, you own the total. On-device changes where the reading runs; it doesn't change your two-second job of checking the one number that matters. (And a cleaner photo still reads better everywhere, which is why how you frame the shot does more for accuracy than any server ever will.)
The two questions to ask any receipt app
You don't need to know a vendor's architecture to make a good call. Two questions get you most of the way:
- Where does my receipt get read? If capturing a receipt fails on a plane or in a basement, you have your answer — the reading is happening on a server, and you're at the mercy of the signal. On-device reading just works where you are.
- Where does my receipt get stored? "In our secure cloud" means their database. Ask whether you can get every original back, in bulk, without them. With Starlog the store is your Drive, so the answer is yes by construction.
The reason those two questions matter is that a receipt app is a system you're trusting with years of records. Where it reads decides whether it's reliable in the moments you actually need it; where it stores decides whether the records are ever really yours.
The takeaway
Every receipt scanner reads your slip somewhere, and that quiet choice shapes the whole experience. Read it in the cloud and you get heavier models and a scanner that stalls the moment your signal drops — and a receipt that had to be uploaded to be understood. Read it on the device, the way Starlog does with Google's ML Kit, and capture works in the dead-signal places where receipts actually pile up, the reading isn't handed to a server, and the saved copy lands in a Drive folder you own. The OCR is still a draft you confirm, not a miracle — but it's a draft your phone can produce on its own, anywhere, and file somewhere that stays yours.