Incremental offline caching

  • Release version: Australia
  • Updated June 1, 2026
  • 1 minute to read
  • Incremental offline synchronization downloads only the changes to records, rather than the full dataset. This approach keeps offline data current while reducing network and battery usage.

    Instead of downloading a full dataset, incremental offline synchronization only changes records that are retrieved, including any additions, updates, and deletions. The system tracks changes only in the specific records defined by the admin through data items, so the device receives targeted updates rather than a full download. This method keeps the offline cache consistent without placing unnecessary load on the network or device.

    This method periodically compares the data on your instance with the data cached on the mobile device. When a difference is detected, only the changed records are downloaded, removing the need for users to manually update the entire cache or follow a fixed schedule. This makes incremental sync particularly useful in environments where users frequently or unexpectedly lose network connectivity.

    After you enable the incremental updates feature, the user must turn on Background downloading on their device to begin receiving updates. Once enabled, a “Background downloading” section appears under the app’s Offline settings. The user can decide to Enable Wi-Fi only, if they prefer downloads to occur when connected to a Wi-Fi network.

    Background downloading option enabled in the Download cache page

    The following system properties are available when managing incremental offline caching.
    Table 1. Incremental offline caching system properties
    Property Description
    glide.sg.offline.incremental.enabled Enable the incremental offline update option for all users.
    glide.sg.offline.incremental.client_polling_interval Defines the interval at which the polling mechanism checks the server for missed changes.
    glide.sg.offline.incremental.record_watcher_expiration Specifies how long the record watcher remains active when no changes have occurred to trigger an incremental update.
    glide.sg.offline.incremental.silent_push.max_pushes_per_hour The number of incremental updates a user can receive in an hour.
    glide.sg.offline.incremental.silent_push.min_wait_time Specifies the minimum interval between consecutive incremental updates sent to the user’s device.
    glide.sg.offline.job.maxRuntime Controls how long the server can spend generating the offline cache payload for a user.

    For information on other related offline system properties, see System properties in offline mode.