Skip to content
← Journal

Guides

An app that works with no signal

How an app keeps working in a basement with no signal, using WTN App as the example: save on the phone first, sync later and show where your work stands.

9 November 2026 · 5 min read

A driver stands in a basement with no signal, gloves on, and needs a load of waste signed for. For that situation I built WTN App, an app for waste transfer notes in the UK. I have stopped working on it and it is no longer maintained, but a lot of what I learned about sync and field software came from it.

A load went from producer (the building site, the office, the factory) to carrier (the driver) to receiver (the transfer station), in a chain of signatures, and the signal could be missing at any of those places.

Why an app can stop without a network

An app can keep your work on a server, a computer somewhere on the internet. With every action the phone then asks that server whether it worked. With no connection there is no answer, and you see a spinning icon or an error message.

An offline-first app turns that order around. The phone saves your work itself, you can carry on straight away, and the server hears about it later.

Saving on the phone first

In WTN App the phone held a small database, SQLite, which keeps data in a file on the device. A driver could take a load, sign it and hand off to the next party with no signal at all. Syncing is what happens after that: the phone and the server exchange what has changed.

Handing over from one phone to another

At the handover two people stand side by side, and perhaps neither has a signal. For this WTN App used a QR code that was only valid for a short time. The producer’s phone showed the code and the carrier scanned it with the camera. No network is involved, because a QR code is an image with data in it.

That code held two things. The chain’s number said which note it was about. It also held an HMAC of what the producer had recorded at that moment. An HMAC is a kind of digital fingerprint of data, made with a secret key. If anything in the data changes afterwards, the fingerprint no longer matches. A short validity limits what someone could do later with a photo of the QR code.

What happens when the signal comes back

Every step went into a logbook per chain, in which lines are only added and nothing is overwritten. The server read that logbook and worked out the current state of the note from it. A logbook like that suits working with no signal, because two phones that have been offline for a while can each bring their own lines without overwriting each other’s work. The chain reconciled as soon as anyone came back online.

Two people working offline can still want to change the same thing. Without agreements, the software then has to choose which version stays, and the other is lost. WTN App had rules per role for this. Producers edited the producer fields, carriers edited the carrier fields, and nobody could re-sign for someone else. Rules like these come from the work itself, so as an owner you help decide them.

If you are a developer, you will find the technical detail in Offline-first on mobile: syncing with no signal.

The badge with three states

Every screen of WTN App had a badge, a small label, showing where the work stood:

Someone working with no signal otherwise cannot see whether their work is saved or whether it has reached the others. They can only guess, or press send once more. For you as an owner, a label like that also helps when someone calls because something does not seem to arrive: you first ask which state is on the screen.

If you are considering something like this

If your people work in places with poor signal, like a building site or a warehouse, this can be worth it. It does take extra work to build, because the data sits in several places and has to come back into line. That counts towards the price. If the app is only used in the office, you probably do not need it.

A few questions help to settle this beforehand:

Test it in the place where it will be used, because in an office you do not notice how an app behaves in a basement or with gloves on. With WTN App I sat on calls with drivers and changed things when they told me something didn’t work in the cab.

Read next

What's your idea?

Tell me what you're trying to build. I try to reply within one working day.