SyncPilledDocs

Replacing Realm Device Sync

MongoDB ended Atlas Device Sync on September 30, 2025. How to move a Realm app's sync to a small offline-first service.

MongoDB deprecated Atlas Device Sync, the sync behind Realm, in September 2024, and ended it on September 30, 2025. The Realm database itself keeps working on the device; what an app lost is the sync between a person's devices.

Keep Realm, replace the sync

You do not have to leave Realm to sync again. Realm stays the local database, and something else carries the changes:

  1. Give each synced object a stable id and an updated-at date, if it lacks them.
  2. Turn each object into JSON for the snapshot, and back for applying.
  3. Let SyncPilled push what changed and pull what changed elsewhere.

What changes

  • Conflicts are per record. Device Sync merged changes field by field; SyncPilled keeps the latest edit of a whole record. For most personal data (entries, notes, settings) that is what people expect. Records two people edit together are out of scope.
  • No partial sync. Each device holds all of its person's records. That suits personal data in the thousands of records, not huge shared datasets.
  • Your sign-in. Device Sync used Atlas App Services for sign-in; SyncPilled checks your provider's tokens instead.
  • Data stays exportable. Every person's records export as NDJSON, from the console or the CLI.

Moving people's data

Each device still holds its person's data. The first sync after the update pushes it all, and a person's other devices then pull it, so nobody's data needs moving on the server.

On this page