Working Offline

How offline sync works in the mobile app, what data is available without connectivity, and how to troubleshoot sync issues.

Beginnerownermanagersales repcrew leadUpdated 2026-03-08

Working Offline

The Clean Estimate Pro mobile app is designed to work in areas with limited or no internet connectivity. You can view client data, create estimates, and capture job details while offline. The app stores changes locally and syncs them to the server when your connection is restored.


How Offline Sync Works

The app uses a local database on your device to cache data and queue changes. The sync process follows three stages:

  1. Pre-cache -- When you are online, the app downloads and stores a local copy of your most-used data: clients, pricing configuration, services, add-ons, and recent estimates.
  2. Offline queue -- When you make changes without connectivity, the app saves each action (new estimate, client edit, note, photo) to a local queue with a timestamp.
  3. Sync on reconnect -- When your device regains an internet connection, the app automatically processes the queue and pushes all pending changes to the server. Incoming changes from other team members are pulled down at the same time.
Screenshot placeholder
Diagram showing the three sync stages -- Pre-cache, Offline Queue, and Sync on Reconnect

Sync Status Indicator

A sync status indicator appears in the app header so you always know whether your data is current. It shows one of three states:

IndicatorMeaning
Green checkmarkAll data is synced. You are online and up to date.
Orange sync icon with countSync in progress or pending. The count shows how many changes are waiting to upload.
Gray offline iconYou are offline. Changes are being saved locally.

Tap the indicator to see a breakdown of pending changes -- how many client edits, new estimates, photos, and other items are queued.

Screenshot placeholder
App header showing the sync status indicator in each of its three states

Automatic vs. Manual Sync

The app attempts to sync automatically whenever it detects a network connection. You can also trigger a manual sync at any time:

  1. Go to Settings > Offline.
  2. Tap Sync Now.

This is useful when you want to confirm all changes are uploaded before switching devices, ending your work session, or heading into an area without connectivity.

Screenshot placeholder
Offline settings screen with the Sync Now button highlighted

What Data Is Available Offline

Not all data is cached locally. The app prioritizes the information you are most likely to need in the field.

Always Available Offline

The following data is cached automatically and accessible without connectivity:

DataDetails
Client listNames, contact details, and addresses for all clients in your organization
Client profilesFull profiles including estimate history, notes, and communication log
Pricing configurationYour organization's base rates, multipliers, minimum charges, and package discount rules
Services and add-onsThe full list of services and add-on items you have configured
Recent estimatesEstimates created or modified in the last 30 days, including all line items and totals
Your pipeline dealsDeals assigned to you with stage, value, and activity history
Custom item templatesSaved templates for frequently used custom line items
Tax ratesYour configured tax rate settings

Not Available Offline

The following features require an active internet connection:

  • Sending estimates -- email and SMS delivery requires connectivity. You can create and save estimates as drafts offline, then send them when you are back online.
  • Google Places autocomplete -- address search and the Auto-fill Property feature require an API call. Enter addresses and property details manually when offline.
  • Photo uploads -- photos taken offline are queued locally but do not upload to the server until connectivity is restored.
  • Real-time notifications -- push notifications require a connection to the notification server.
  • PDF preview and generation -- PDF rendering happens server-side and requires an internet connection.
  • AI features -- lead scoring, pricing analysis, photo estimation, and AI-generated proposal text all require server connectivity.
  • Payment processing -- Stripe payment links, invoice creation, and payment status checks require an active connection.
  • Integration syncs -- calendar, QuickBooks, and Workiz data syncs require connectivity.

If you attempt to use one of these features while offline, the app displays a message indicating that the action requires an internet connection.


Creating Estimates Offline

You can build a complete estimate without an internet connection. The process is nearly identical to the online workflow with a few differences.

Step-by-Step

  1. Tap the + button on the Proposals tab to start a new estimate.
  2. Select the estimate type (Residential, Commercial, Fleet, or Holiday Lights).
  3. Client and Property -- type the client name and details manually. If the client exists in your cached data, the app suggests matches from the local database. Google Places autocomplete is not available offline, so enter the full address, city, state, and ZIP by hand.
  4. Services and Pricing -- select services and configure parameters as usual. Pricing calculations use your cached pricing configuration, so totals are accurate and match what the web dashboard would calculate.
  5. Review -- review the estimate summary. The Send Estimate button is disabled while offline. Tap Save as Draft instead.
Screenshot placeholder
Review screen showing the Send Estimate button disabled with an offline indicator and a prominent Save as Draft button

What Happens to Offline Drafts

Offline drafts are stored in the local database and marked with a pending sync badge in your Proposals list. When you regain connectivity:

  1. The app detects the connection and begins the sync cycle.
  2. Draft estimates upload to the server.
  3. The drafts appear in your estimates list on all devices -- mobile and web.
  4. You can then open any draft and tap Send Estimate to deliver it to the customer.

The pending sync badge disappears once the upload completes successfully.

Screenshot placeholder
Proposals list showing a draft estimate with a pending sync badge next to the Draft status

Editing Existing Data Offline

You can edit client details and estimate drafts while offline. Edits are saved locally and synced when you reconnect.

Client Edits

Open a client profile and update their contact information, address, or notes. Changes save to the local database immediately. A pending sync badge appears on the client record until the edit uploads to the server.

Estimate Edits

Open any draft estimate and modify services, pricing, client details, or add-ons. The app recalculates totals using your cached pricing data. Save the changes and they queue for sync.

Adding Notes and Photos

You can add notes to client records and job entries while offline. Photos taken with your device camera attach to the relevant record locally. Both notes and photos upload during the next sync cycle.


Conflict Resolution

If two team members edit the same record while one or both are offline, a conflict may occur during sync. The app handles conflicts using the following rules:

Simple Fields

For straightforward fields like client phone number, email, or address, the most recent change wins based on timestamp. If you updated a phone number at 2:00 PM and a colleague updated the same phone number at 2:15 PM, your colleague's change takes precedence.

Notes

Notes from both edits are preserved and merged chronologically. Neither person's notes are lost.

Estimates

If two team members edit the same estimate while one or both are offline, the app flags the conflict during sync. A conflict resolution dialog appears prompting you to review both versions side by side and choose which to keep.

Screenshot placeholder
Conflict resolution dialog showing two versions of an estimate with options to keep either version or merge

Conflict Frequency

In practice, conflicts are uncommon. Most offline usage involves working on different client records or creating new estimates rather than editing the same data simultaneously.


Configuring Offline Settings

Go to Settings > Offline to manage how the app handles local data.

Screenshot placeholder
Offline settings screen showing the offline mode toggle, cached data size, Sync Now button, and Clear Cache button

Offline Mode Toggle

Offline mode is enabled by default. The toggle controls whether the app maintains a local data cache. Leave this on unless you have a specific reason to disable it.

Data Cache Size

The settings screen shows how much device storage the app is using for cached data. Typical usage ranges from 50 MB to 200 MB depending on the size of your client list and the number of recent estimates.

Sync Now

Tap this button to manually trigger a full sync cycle. The app uploads any pending local changes and downloads the latest data from the server.

Clear Cache

Tap this to remove all locally cached data and force a full re-download on the next sync. Use this only if you suspect corrupted local data or need to reclaim device storage.

Warning: Do not clear the cache while you have unsynced changes. Verify that the sync status indicator shows a green checkmark before clearing. If you clear the cache with pending changes, those changes are lost permanently.


Preparing for Offline Work

Before heading into an area with limited connectivity, take these steps to ensure you have the data you need:

  1. Open the app while online. This triggers a background sync that downloads the latest client and pricing data.
  2. Tap Sync Now in Settings > Offline to force a complete sync cycle.
  3. Verify the sync indicator in the app header shows a green checkmark, confirming all data is up to date.
  4. Browse the clients and estimates you plan to work with during your offline period. Accessing a record ensures it is fully cached in the local database.
  5. Check your pricing configuration by viewing the Pricing section in Settings. Confirm your rates are current before creating estimates offline.

Syncing When Back Online

When your device reconnects to the internet, the sync process starts automatically within a few seconds. Here is what to expect.

Sync Order

The app processes queued changes in a specific order to maintain data integrity:

  1. New client records upload first so that estimates can reference them.
  2. Client edits sync next.
  3. New estimate drafts upload.
  4. Estimate edits sync.
  5. Notes and other metadata sync.
  6. Photo uploads begin last. These may take longer depending on file sizes and connection speed.

Sync Progress

A progress indicator appears showing the number of pending items and the current upload status. For example: "Syncing 3 of 7 items."

Screenshot placeholder
Sync progress indicator showing "Syncing 3 of 7 items" with a progress bar

Completion

When sync finishes, the indicator returns to the green checkmark state. All your offline work is now visible on the web dashboard and accessible to other team members.


Troubleshooting Sync Issues

Changes are not syncing

  1. Verify your internet connection by opening a browser and loading a web page.
  2. Go to Settings > Offline and tap Sync Now to trigger a manual sync.
  3. If the sync fails, read the error message displayed below the Sync Now button. Common causes include expired authentication tokens and temporary server issues.
  4. If the error mentions authentication, log out and log back in to refresh your session. Pending offline changes are preserved through the logout and login cycle.

Duplicate records after sync

This can happen if you create a new client offline that another team member also created while you were disconnected. The app detects potential duplicates based on matching email address or phone number. When detected, a merge prompt appears asking you to combine the records or keep them separate.

Screenshot placeholder
Duplicate client detection dialog with Merge and Keep Separate options

Sync takes too long

Large photo uploads are the most common cause of slow syncs. If you have many queued photos:

  1. Connect to a Wi-Fi network for faster upload speeds.
  2. Keep the app open and in the foreground during the sync. Mobile operating systems may throttle background data transfers.
  3. Wait for the sync to complete before closing the app. Interrupting a sync mid-transfer can cause it to restart from the beginning on the next attempt.

Cached data seems outdated

Pull to refresh on any list screen first. If data still appears stale:

  1. Go to Settings > Offline.
  2. Tap Sync Now and wait for it to complete.
  3. If data remains outdated, tap Clear Cache (after confirming you have no pending changes) to force a full re-download of all data.

Estimate pricing differs from web

This typically means your cached pricing configuration is out of date. A manager may have updated pricing defaults on the web since your last sync. Tap Sync Now to pull the latest pricing data, then open the estimate and verify the totals update accordingly.

Error: "Session expired"

Your authentication token has expired after an extended offline period. Log out via Settings > Profile > Log Out, then log back in with your credentials. The app preserves all pending offline changes and uploads them after you re-authenticate.


Tips

  • Sync before you leave the office. A quick tap on Sync Now ensures your local data is current before heading into the field.
  • Save estimates as drafts when offline. Finalize and send them as soon as you reconnect -- it takes only a few seconds.
  • Monitor the sync indicator. The icon in the header tells you at a glance whether your data is current or has pending uploads.
  • Use Wi-Fi for the initial sync. The first sync after installing the app downloads your full client list and pricing data. A Wi-Fi connection avoids consuming mobile data.
  • Do not clear the cache unnecessarily. Clearing forces a full re-download of all data. Only use it when troubleshooting persistent issues.
  • Take photos on-site even without signal. They attach to the relevant record locally and upload automatically during the next sync.
  • Check the sync status before switching devices. If you create estimates on mobile and want to continue on the web, make sure the green checkmark is showing first.

Was this article helpful?

Still need help? Contact support