---
title: "Choose the right collaboration and synchronization setup"
canonical_url: "https://www.nutrient.io/guides/document-engine/instant-synchronization/choose-the-right-collaboration-and-synchronization-setup/"
md_url: "https://www.nutrient.io/guides/document-engine/instant-synchronization/choose-the-right-collaboration-and-synchronization-setup.md"
last_updated: "2026-06-16T16:35:13.577Z"
description: "Compare Web SDK with a license key, Web SDK with Document Engine, and DWS Viewer API collaboration workflows so you can choose the right setup."
---

# Choose the right collaboration and synchronization setup

Collaboration and synchronization can look similar in Nutrient Web SDK, Document Engine, and DWS Viewer API, but the responsibility for persistence and real-time updates changes by setup and document source.

## The same workflow in each setup

| Setup                                      | What happens to document changes                                                                                                                  | When to use it                                                                                                   |
| ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| Web SDK with a license key                 | Changes stay in the browser until you export, download, or save them through your own custom flow. There’s no built-in multiuser synchronization. | Use this when one user works on a document locally or when collaboration is handled outside Nutrient.            |
| Web SDK + Document Engine                  | Document Engine persists document changes and can synchronize them across users, sessions, and devices.                                           | Use this when you need self-hosted persistence, real-time collaboration, permissions, or cross-platform syncing. |
| DWS Viewer API with DWS-managed documents  | DWS Viewer API persists supported document changes and provides managed collaboration and syncing for Web SDK clients.                            | Use this when you want server-backed collaboration without operating your own Document Engine infrastructure.    |
| DWS Viewer API with app-provided documents | DWS Viewer API authorizes and meters the viewer session, while your app remains responsible for the document source and persistence.              | Use this when your app already provides the document and doesn’t need DWS to store it as a managed document.     |

## How to choose the right flow

Use **Web SDK with a license key** when collaboration isn’t a core requirement, or when your app only needs a single-user editing or review flow.

Use **Web SDK + Document Engine** when you need your own backend to control document storage, authentication, permissions, and real-time synchronization.

Use **DWS Viewer API with DWS-managed documents** when you want Nutrient to manage the server-side collaboration stack for you.

Use **DWS Viewer API with app-provided documents** when your app provides the document directly and only needs DWS Viewer API session authorization and usage metering.

## Common points of confusion

- **Standalone editing isn’t the same as collaboration** — A user can annotate or comment in Web SDK without built-in multiuser synchronization.

- **Document Engine is the self-hosted collaboration backend** — It provides persistence, synchronization, collaboration state, and permissions for server-backed workflows.

- **DWS-managed documents use the managed backend layer** — You don’t need to operate your own Document Engine instance to get server-backed persistence or syncing for DWS-managed documents.

- **App-provided DWS Viewer API documents are different** — DWS Viewer API authorizes and meters the viewer session, but the document isn’t uploaded to DWS as a managed document, so your app controls the document source and any persistence flow.

- **Real-time collaboration and persistence are related, but not identical** — Changes can be persisted on a server without every connected user necessarily receiving the same live updates in the same way; that depends on the synchronization mode in use.

- **Authentication changes by setup** — Document Engine typically uses JWTs, while DWS Viewer API uses session tokens for Web SDK clients.

## Typical decision questions

Ask these questions before choosing an implementation:

1. Do multiple users need to see each other’s changes?

2. Do changes need to persist on a server automatically?

3. Do you need self-hosted control, or do you want a managed service?

4. Do you need permissions or role-based collaboration rules?

5. Do you need collaboration beyond the browser across mobile and web clients?

6. If you’re using DWS Viewer API, should DWS store and manage the document, or should your app provide it directly?

## Equivalent guides by product

- **Web SDK**
  - [Instant sync and collaboration overview](https://www.nutrient.io/guides/web/instant-synchronization.md)
  - [Get started with Instant sync on Web](https://www.nutrient.io/guides/web/pspdfkit-instant/getting-started.md)
  - [Save PDFs to Document Engine](https://www.nutrient.io/guides/web/save-a-document/to-document-engine.md)
  - [Web SDK vs. DWS Viewer API](https://www.nutrient.io/guides/web/knowledge-base/web-sdk-vs-dws-viewer.md)

- **Document Engine**
  - [Instant sync and real-time collaboration overview](https://www.nutrient.io/guides/document-engine/instant-synchronization.md)
  - [Integrate real-time collaboration with Instant sync](https://www.nutrient.io/guides/document-engine/instant-synchronization/get-started.md)
  - [Real-time collaboration server](https://www.nutrient.io/guides/document-engine/viewer/real-time-collaboration.md)
  - [Authentication](https://www.nutrient.io/guides/document-engine/instant-synchronization/authentication.md)

- **DWS Viewer API**
  - [Implement collaboration and synchronization with DWS Viewer API](https://www.nutrient.io/guides/dws-viewer/developer-guides/implement-collaboration-and-synchronization-with-dws-viewer-api.md)
  - [DWS Viewer API getting started](https://www.nutrient.io/guides/dws-viewer/getting-started.md)
  - [Architecture of DWS Viewer API integration](https://www.nutrient.io/guides/dws-viewer/developer-guides/architecture.md)
  - [Integrate DWS Viewer API with your own backend](https://www.nutrient.io/guides/dws-viewer/developer-guides/use-with-your-backend.md)
  - [Open app-provided documents in Web SDK](https://www.nutrient.io/guides/dws-viewer/developer-guides/open-client-provided-documents.md)
---

## Related pages

- [Adding comments to PDFs on web and mobile](/guides/document-engine/instant-synchronization/comments.md)
- [Authenticate clients with JWT in Document Engine](/guides/document-engine/instant-synchronization/authentication.md)
- [Integrate real-time collaboration with instant sync](/guides/document-engine/instant-synchronization/get-started.md)
- [Document layers for all workflows](/guides/document-engine/instant-synchronization/instant-layers.md)
- [Instant sync and real-time collaboration](/guides/document-engine/instant-synchronization.md)

