ZZ Solutions
Work/Platform EngineeringAI extension path

Real-Time Sync at 225M+ Users

Cross-platform state synchronization for web, mobile, and desktop — keeping 225M+ users in sync without full-state polling

225M+Users on the platformEvernote scale
4Platforms in syncWeb · iOS · Android · Desktop
$250K+Modeled support savingsFewer sync-related support loops
<100msSync latency targetPer connected surface
Overview

The problem & context

This case is based on real-time sync work at Evernote — a product used by 225M+ accounts across web, iOS, Android, and desktop. The core engineering challenge was keeping state consistent across four surfaces without forcing full refreshes that wasted bandwidth and caused visible conflicts. The business consequence of sync failures is direct: users see stale data, lose edits, and raise support tickets for issues that are hard to reproduce because each device saw a different version of the same state.

Challenge

Cross-platform products fail visibly when state doesn't follow the user. Message counts drift. Ordering differs between devices. Local changes collide with server state in ways that aren't recoverable without losing data. At 225M+ user scale, even a small rate of sync failures generates enormous support volume — and diagnosing them requires reproducible state history that most architectures don't maintain.

Solution

I worked on a real-time sync approach using differential updates, server-side state versioning, and conflict resolution across four client surfaces. The core design is simple: move only changed state, preserve enough version history to detect and resolve conflicts deterministically, and keep every connected surface aligned through a shared sync model. Delta payloads reduced bandwidth by removing full-state polling. Versioned state made conflicts diagnosable instead of mysterious.

Architecture
— dashed edges show a possible future AI extension

System design + AI integration path

Type colors:● AI● System● Human● Output● Data

Loading diagram…
Business Impact

By the numbers

Operational metrics and modeled business impact. Hover bars for exact values.

Loading chart…
Impact

Measurable outcomes

Each ring animates to its final value on load.

92%

Bandwidth reduction vs polling

88%

Conflict resolution coverage

85%

Cross-platform state parity

95%

Sync debugging reproducibility

Before & After

What changed

BeforeAfter
Sync update model92% less data
BeforeFull-state refresh every poll
AfterDelta — only changed fields
Conflict handlingConsistent
BeforeClient-specific, inconsistent
AfterShared deterministic merge path
Sync issue diagnosisReproducible
BeforeHard to reproduce per device
AfterVersioned state history
Cross-platform parity+85%
BeforeSurface-by-surface drift
AfterShared sync model
Design North Star

Make user state identical on every surface by moving only what changed — and make every conflict a traceable, reproducible event.

Design Rationale

Why this architecture, not another

Full-state polling was causing visible inconsistencies and creating unnecessary bandwidth pressure at scale. Delta-based sync was chosen because it reduces both the probability of conflicts (fewer fields change simultaneously) and the cost of resolving them (each delta carries version metadata). The design treats conflict resolution as a first-class problem — because any system where users act across multiple devices will eventually need to merge divergent states, and 'last write wins' is not acceptable in a product where users trust their notes with important information.

System Design

Architecture principles

The choices that made this system practical in production: clear ownership, controlled failure modes, and business evidence before automation.

01

Sync changes, not snapshots

Delta sync moves only the fields that changed — reducing bandwidth, conflict probability, and server pressure at scale.

02

Version every state transition

State changes are ordered, versioned, and replayable — so the system can explain why a user sees a value.

03

Resolve conflicts close to the domain

Deterministic rules handle the common cases; patterns that fall outside deterministic resolution are candidates for learned conflict strategies.

Delivery Model

How the implementation was structured

01
Phase 01

State model audit

Identify which entities need real-time sync, which fields conflict, and which changes are safe to merge automatically.

02
Phase 02

Delta protocol build

Implement versioned deltas, persistent connections, broadcast fanout, and cold-start bootstrap for all four client surfaces.

03
Phase 03

Conflict support layer

Use historical conflict patterns to recommend merge strategy and prioritize high-value updates to connected surfaces.

Production Controls

What made it safe to scale

Scalable

Delta payloads reduce network and server pressure as connected surfaces grow — critical at 225M+ user scale.

Reliable

Versioned state and replayable deltas make conflicts diagnosable — not mysterious edge cases that close when the device is restarted.

User-trust focused

Users see consistent state across devices without manual refreshes, support calls, or lost edits.

Agent Stack
Possible Extension

Possible AI extension agents

This architecture pre-dates modern AI tooling. Each agent below integrates as an optional, non-breaking layer over the existing event bus or API surface — no rearchitecture required.

Conflict Resolution Agent
Learns from historical conflict patterns to select the merge strategy that minimizes data loss — resolves edge cases that deterministic rules cannot cleanly handle
Smart Delivery Agent
Learns each user's notification behavior and batches low-priority updates — reduces unnecessary wake-ups without affecting perceived freshness
Prefetch Agent
Analyzes session patterns to pre-load content the user is statistically likely to open next — makes cold starts feel instant on any device
Outcomes

Business impact

  • Delta sync reduced bandwidth by ~92% vs full-state polling — meaningful at 225M+ user scale across four client surfaces
  • Versioned state history made sync issues diagnosable and reproducible — support ticket resolution no longer depended on device-specific reproduction steps
  • Conflict resolution moved from client-specific behavior to a shared merge path — consistency across web, iOS, Android, and desktop improved measurably
  • The sync model treated all four clients as connected surfaces of one product rather than separate implementations — unified behavior without unified codebases
Stack
WebSocketsDelta-Sync ProtocolRedis Pub/SubPostgreSQLState VersioningCross-platform SDKs

Need something like this?

Book a free 90-minute audit. We'll look at your workflow and tell you honestly whether the same approach applies.