Add an expense with no signal. It syncs when you are back.

Recording an expense works with no connection at all — no waiting for a signal, no losing what you typed. SharedExpense saves it on your device and syncs automatically once you reconnect.

The form works exactly the same with no connection

There is no separate offline mode to learn: the same Add Expense form works with zero signal, and the only visible change is what the submit button says and what happens after.

SharedExpense
You're offline. This expense will be saved on your device and synced automatically.

Add Expense

Amount: $42.00

Category: Groceries

An illustration of the Add Expense form while offline, rebuilt in HTML with example figures — not a screenshot.

While you are offline, a banner reads: “You're offline. This expense will be saved on your device and synced automatically.” The submit button changes from “Add Expense” to “Save offline”, and confirming shows a toast reading “Saved offline — will sync when you reconnect” before returning you to the dashboard.

It counts immediately, not after it syncs

A pending expense appears in your list and in your monthly totals the instant you save it, and it runs through the exact same allocation math as one saved online.

That last part matters: if the expense you just logged offline is an annual bill, it is already spread correctly across the months it covers before it has ever reached the server. You are not looking at a placeholder that gets corrected later — the number on screen is the real, allocated figure from the moment you save it.

Sync you can trust

Every expense you save offline is queued in IndexedDB on your device, and sync is idempotent — a retry on a flaky connection cannot create a duplicate.

SharedExpense

Waiting to sync

3 waiting to syncSync now

Syncing

Syncing 3…

Failed

1 failed to sync
Category no longer existsDiscard
An illustration of the sync indicator in its waiting, syncing and failed states, rebuilt in HTML with example figures — not a screenshot.

The indicator moves through three states, worded exactly as you see them: {n} waiting to sync” with a Sync now button, “Syncing {n}…” while it works, and {n} failed to sync” when something goes wrong. That last one expands to show each failed item's error message with a Discard action.

A genuine network failure leaves the whole queue exactly where it was and retries later — nothing is marked failed just because the connection dropped. A real error on one item marks only that item as failed and keeps processing the rest, so one bad row can never block the queue behind it.

Installable, and it behaves like an app

Add SharedExpense to your home screen and it launches full-screen like any native app, with shortcuts straight to the two things you reach for most.

As an installable progressive web app, SharedExpense ships with two home-screen shortcuts: Add Expense and Reports. Long-press or right-click the icon and either one opens directly, without a detour through the dashboard first.

What stays readable when you have no connection

Offline is not just the add form. Any month you have already opened, plus your accounts, categories and groups, stay available from a local cache.

Months you have opened

A month you viewed while online stays readable offline, and the app tells you plainly that it is showing saved data, with a timestamp for when that snapshot was taken.

Accounts, categories and groups

All three are cached on your device, which is what keeps the Add Expense form fully usable — every field on it can be filled in without a connection.

A month you have never opened

Cannot be shown offline: there is no local copy to read until you have viewed it once while connected.

What still needs a connection

Reading and adding are built to survive no signal; anything that changes shared or account-level state on the server is not.

Reports

Summary, Trends and Breakdown all need a connection to load their figures.

Editing an existing expense

Changing an expense you already saved requires a connection; adding a new one does not.

Group management, settings and your profile

Anything that changes shared or account-level state — groups, settings, your profile — needs a connection too.

Each of those screens shows the same message when you open it offline: “You're offline / {feature} needs an internet connection. Your offline expenses are saved and will sync automatically.”

Questions people ask

Does it work on a plane?
Yes. Adding an expense needs no connection at all: the form works exactly as it does online, the submit button reads "Save offline", and the expense is stored on your device. It syncs automatically the next time you have a signal, whether that is when you land or the moment airplane mode comes off.
What happens if I close the app before it syncs?
Nothing is lost. The expense is queued on your device in local storage the moment you save it, independent of the app staying open. Sync resumes automatically the next time you open the app with a connection, or as soon as your device comes back online while the app is open.
Can I see old expenses while offline?
Any month you have already opened stays readable offline from a local cache, and the app tells you it is showing saved data along with when that snapshot was taken. Accounts, categories and groups are cached too, so the add-expense form is fully usable without a connection. A month you have never opened cannot be shown, since there is nothing local to read.
Will it duplicate my expense if sync retries?
No. Sync is idempotent, so retrying a queued expense after a flaky connection cannot create a second copy. If one item in the queue hits a real error, only that item is marked failed with its error message and a Discard option; every other queued expense keeps syncing normally.
Does it need an app store?
No. SharedExpense is an installable progressive web app: add it to your home screen from the browser and it launches like a native app, complete with shortcuts straight to Add Expense and Reports. There is nothing to download from an app store and nothing to update separately.

Never lose an expense to a dead connection again

SharedExpense is free and installs straight from your browser. Sign in to add your first expense, online or off.