Building shared moments in video calls

When stay-at-home measures went into effect in early 2020, the plan to create "the digital equivalent of the living room" that Mark Zuckerberg had outlined a year earlier suddenly became urgent. The result was a push to build co-experiences: shared digital activities — watching shows, listening to music, looking at photos together — that make video chat feel less like a meeting and more like hanging out. Messenger and Instagram have rolled out several pieces of this already, including Messenger Rooms, cross-app messaging, screen sharing, 360 backgrounds, and AR lighting. The latest addition, Watch Together, lets people watch videos and shows simultaneously on their devices during a call.

Building it required working like a startup within an established product. The team focused on iterating quickly, challenging assumptions, and learning from how people actually used the feature. But pulling off a true synchronous hangout also meant redesigning the video call experience from the ground up, and solving hard platform-level problems around real-time state and audio.

Iterating toward a product people want

Watch Together was treated as its own product with its own product-market fit goals, acknowledging that the first attempt would not be perfect. The team combined quantitative signals from instrumentation — funnel analysis, drop rates, ranking performance, UX interactions, participation, and retention metrics — with qualitative research studies and feedback from a diverse product influencer community.

User feedback drove a complete redesign of the video call UI. The team built a new swipe-up drawer, simplified the video selection flow, and iterated on ranking, categories, and content groupings. Call layouts were tested to balance the video being watched against views of participants. Audio required careful attention too: users said balanced audio, echo cancellation, and independent volume control for the video were essential, and those all made it into the final product. The UX patterns built along the way are generic, so future co-experiences can reuse them.

Solving state synchronization

A key technical hurdle for co-experiences is real-time, high-precision synchronization: everyone must be watching the same frame, and play, pause, rewind, and fast-forward must happen simultaneously on every device. Prior approaches relied on sending data messages to each client and letting each device resolve the final state locally. That meant separate Android, iOS, and web implementations of the same logic, and it led to inconsistencies and reliability issues.

The team replaced this with a new state synchronization platform ("state sync") built over their multiway calling infrastructure, using the same servers that host individual and group calls. State sync takes a centralized approach: all clients in a call hit the same server-side resolver, which processes all inputs through identical logic. The platform relies on Thrift structures, defined separately for input (messages the server receives) and output (the resolved structure returned).

State sync works in three stages:

  1. Subscription — a client subscribes to a state sync topic before sending or receiving state, so Watch Together data isn't sent to clients that don't support it.
  2. Input — clients send formatted messages for resolution using the Thrift structures. A snapshot-based model means that if multiple inputs arrive in quick succession, the latest one is used by the resolver.
  3. Resolution — all clients use the same server-side resolver, centralizing logic and eliminating the need for multiple processing units on each client. This also saves processing power on devices.

The platform is generic by design. Today, it powers Watch Together, but it also handles screen-sharing moderation in Messenger Rooms and the Rooms to Live feature. Built with cross-app communication in mind, it works across both Messenger and Instagram on web, Android, and iOS.

A foundation for more shared experiences

The reusable UX components, the state sync platform, and the understanding of what makes a good virtual hangout provide a foundation for scaling co-experiences across Facebook's apps and services. The longer-term vision is for Messenger and Instagram to act as a digital living room where people can talk, share, and watch together — with the underlying infrastructure already in place to grow beyond Watch Together.