Use this guide to choose the right annotation persistence strategy for your workflow.

Recommendation summary:

  • Instant JSON β€” Default format for internal persistence/sync data.
  • XFDF β€” Use for interoperability and exchange with external PDF tools.
  • Server-backed (Document Engine with Instant synchronization) β€” Use for collaborative persistence and synchronization across users/devices/sessions.

Decision matrix

RequirementRecommended approach
Single-user app, local or custom backend persistenceInstant JSON
Real-time or multiuser team reviewDocument Engine with Instant synchronization
Exchange annotations with Adobe Acrobat or other third-party PDF toolsXFDF
Need both collaboration and interoperabilityUse server-backed synchronization internally, and convert/export XFDF at integration boundaries

Guidance by use case

Use the following guidance to choose the right persistence strategy for your specific use case.

Single-user local persistence

If users mainly resume their own work later (same user, no concurrent editing), use Instant JSON. It’s compact and designed for storing annotation changes.

Multiuser/team review workflows

If multiple users annotate the same document across sessions/devices, use Document Engine and Instant synchronization. This provides built-in synchronization and conflict handling for concurrent edits.

Refer to the review persistence architecture for recommended implementation patterns.

Interoperability with external PDF tools

If annotations must roundtrip through Adobe Acrobat or other tools that support XFDF, use XFDF.

For apps that also require collaboration, keep internal storage/sync in Instant JSON via server-backed sync and export/import XFDF only at integration points.

Common mistakes to avoid

  • Using local-only storage for collaborative team review workflows.
  • Choosing XFDF as the primary internal sync format when no external interoperability is needed.
  • Skipping server-backed sync while expecting reliable multiuser/session continuity.