Working offline
Tero.Ops is designed for vessels at sea with intermittent or no internet. When connection drops, the app keeps working with the data it already has and queues your changes locally. When connection returns, it syncs automatically.
What works offline
Anything you’ve already opened or that was prefetched works without signal:
- View assets, jobs, meters, inventory items, contacts
- Record job completions: log hours, notes, photos, parts used
- Record meter readings
- Submit work requests and inventory requests
- Browse maintenance history on an asset

When you go offline, a small indicator appears in the bottom or top bar. Work continues normally — saved actions get a small clock icon meaning “pending sync”.
What needs a connection
A few actions require live data and will wait until you’re back online:
- Loading screens for assets/jobs you haven’t viewed before
- Adding a new attachment larger than a few MB (queued, but uploaded only when online)
- Inviting users or changing permissions (admin only)
How sync resumes
When connection returns, Tero.Ops syncs your queued changes in the background. You’ll see a brief banner: “Synced — N changes uploaded”.

You don’t need to refresh or do anything special.
Resolving sync conflicts
Sometimes two people edit the same record while one of them is offline. When the offline person reconnects, Tero.Ops detects the conflict and shows a modal:

You’ll see both versions side-by-side and a choice:
- Keep my version — overwrites the other person’s edits
- Keep their version — discards your offline edits
- Merge manually — for complex records, open the record and merge field-by-field
Tero.Ops keeps a full audit log of all conflict resolutions, so you can always trace what was kept and what was discarded.
Best practices at sea
- Open the assets you’ll need before leaving harbour. This caches them locally.
- Sync once a day in port or with satellite. Even brief connectivity is enough to push completion records.
- Check the indicator — if it stays “syncing” for more than 10 min, refresh to nudge it.