← All articles

Local-first vs cloud task managers: privacy, ownership, and offline

A local-first task manager keeps the real copy of your data on your device, not on a vendor's server. Here's what that changes for privacy, speed, offline use, and what happens when the app shuts down — plus the tradeoffs nobody mentions.

Published · 7 min read

Most task apps look the same from the outside: a list, a checkbox, a sync icon. The difference that actually matters is invisible — it's the answer to one question. When you open the app, where does the real copy of your data come from: a chip in your pocket, or a server you've never seen?

That single architectural choice — local-first or cloud-first — quietly decides how fast the app feels, whether it works on a plane, who can read your tasks, and what's left of your data the day the company behind it goes away.

What "local-first" actually means

A local-first task manager keeps the authoritative copy of your data on your own device. The app reads and writes locally; if it syncs at all, it treats the network as an optional layer on top, not the foundation. The term comes from a 2019 essay by Martin Kleppmann and colleagues at Ink & Switch, which laid out the idea as a reaction to a decade of "your data lives on our server" software.

A cloud-first app inverts the relationship. The server holds the real copy; your phone shows a cached view of it and sends changes back. That works beautifully when you have signal and a valid account — and falls apart, in small ways and large, when you don't.

It's worth being precise here, because the marketing around both has gotten muddy: local-first is not the same as "has an offline mode," and it's not automatically the same as "private" or "encrypted." It's a statement about where the source of truth lives. Everything below follows from that.

Where your data lives is the whole argument

When the canonical copy of your tasks sits on your device, four things change at once. None of them is a feature you toggle on — they're consequences of the architecture.

Speed: no round trip to wait on

A local read doesn't cross the network. It returns in roughly the time it takes to read from memory or disk — fast enough that the result is on screen before you've finished the gesture. A cloud action can't beat physics: every request waits on a round trip whose floor is set by the speed of light plus server processing, typically tens to hundreds of milliseconds depending on your connection (RxDB has a good technical write-up of why).

That gap is why cloud apps lean on loading spinners and "optimistic UI" tricks — they're papering over a wait that a local-first app simply doesn't have. The apps people describe as feeling "instant" are usually the ones reading from a local store.

Offline is the default, not a fallback

A local-first app works without a connection because the data was never remote. Capturing a task in a subway tunnel, processing your inbox on a flight, reviewing your projects in a basement office — none of it is a special mode. It's just the app working normally.

Cloud apps have gotten better here; many, including the big subscription players, now ship an offline mode. But it's a fallback, with the seams that implies: reduced features, a sync queue, and the worst case of all — "Lie-Fi," where you technically have a connection but it's too weak to actually load anything, so the app hangs instead of failing cleanly. Local-first sidesteps the entire category of problem.

Privacy: nothing to leak if nothing leaves

If your tasks never go to a server, they can't be exposed in a server-side breach, scraped for ad targeting, or fed into a training set. An app that requires no account goes one step further: there's no email, no profile, no identifier transmitted at all, because there's no sign-up to transmit it.

The honest caveat — and you should hold every local-first app to it — is that "local" describes location, not protection. Data on your device is only as safe as your device and any backups it produces. The right question isn't just "where does my data live," but "is it encrypted where it lives, and where do backups go."

Longevity: your data can outlive the app

This is the one people notice too late. A cloud app is only alive while its servers are. When a company shuts down, gets acquired, or sunsets a product, the app can turn into a brick overnight — and the data you trusted to it goes with the lights.

Local-first data survives that, if it's stored in a transparent format. Many local-first apps use SQLite or JSON — and SQLite is one of the formats the US Library of Congress recommends for long-term preservation, alongside XML, JSON, and CSV. A file in a format the national archive trusts to be readable in fifty years will outlive any single app that wrote it.

The honest tradeoffs

Local-first isn't free of downsides, and an article that pretends otherwise isn't worth your time. The real costs:

  • Multi-device sync is genuinely harder. Cloud apps sync as a side effect of being cloud apps — the server is the single point everyone reads from. Local-first apps have to reconcile edits made independently on different devices, which is a hard computer-science problem (the usual answer is CRDTs). Some local-first apps offer sync; many keep it simple and stay single-device or rely on you to move a backup file.
  • Backups are on you. There's no server quietly keeping a copy. If you lose the device without a backup, you lose the data. The flip side of "no one else has it" is "no one else has it."
  • Real-time collaboration is limited. If your workflow depends on a shared list updating live across a team, cloud-first still does that more naturally.

For a personal GTD system — capture, process, review, all on your own phone — these tradeoffs barely register. For a shared team workspace, they matter more. Match the architecture to the job.

Local-first vs cloud-first, side by side

Local-firstCloud-first (e.g. Todoist)
Source of truthYour deviceVendor's server
SpeedNo network round trip — effectively instantWaits on a server response
OfflineDefault stateFallback mode (or none)
Account requiredOften noneAlmost always
Privacy exposureNothing transmitted to leakData sits on a server you don't control
If the company foldsData stays readable on your deviceApp can stop working
Sync across devicesHarder; sometimes manualBuilt in, automatic
Typical pricingFree or one-timeRecurring subscription

The table isn't a scoreboard where one column wins every row — cloud-first genuinely wins on sync and live collaboration. It's a map of which choice buys you which property, so you can pick on purpose instead of by default.

Where Trayzero lands

Trayzero is local-first by design. Your tasks live on your phone, the app needs no account, and nothing is transmitted to a server you'd have to trust. It's built specifically for GTD — fast inbox capture and processing, and a weekly review you run on data that's always there, online or not.

It also leans into the pricing that local-first makes possible: every feature is free, with no subscription — optional tips and a supporter purchase exist, but nothing is gated behind them. There's no server bill to fund, so there's nothing to charge rent for.

It's mobile-only today — Android and iOS, no desktop app — so if you live in a keyboard-driven desktop workflow, a cross-platform tool may fit better. But if you want a task system that's instant, works everywhere, keeps your data yours, and doesn't ask you to sign up for anything: that's the case for local-first, and it's the whole reason Trayzero is built the way it is.

Free on Google Play and the App Store.


Trayzero is an independent app inspired by the GTD methodology. "Getting Things Done" and "GTD" are trademarks of the David Allen Company.

Sources

  1. Ink & Switch — Local-first software: you own your data, in spite of the cloudThe canonical 2019 essay (Kleppmann et al.) that defined local-first software and its seven ideals — speed, multi-device, offline, collaboration, longevity, privacy, and user control.
  2. SQLite — Recommended Storage FormatDocuments that the US Library of Congress lists SQLite among its recommended storage formats for long-term dataset preservation — the basis for the longevity claim about transparent local formats.
  3. RxDB — Why local-first software is the futureTechnical treatment of local-first from a database engine's perspective: why on-device reads avoid network round-trip latency, and an honest list of the tradeoffs (sync conflicts, eventual consistency).
  4. Todoist — PricingReference for the cloud comparison: Todoist is a server-based task manager on a monthly/annual subscription, used here as a representative cloud-first example.

Keep reading