Skip to main content
Skip table of contents

Spaces with Benefits - take advantage of synchronizing content between spaces

Using a two space setup for your Confluence content offers surprising benefits;

  • simplifies permissions and access management

  • doubles as workflow control

  • enhances your content and life-cycle management options

  • allows you to make multiple apps from multiple vendors work together

A two space setup is especially useful for product documentation, intranet spaces, and generally speaking, in any scenario in which the number of those who consume the content is far greater than the number of those who write it.

Let’s dig in.

What is this two-space setup anyway?

The great thing about Confluence spaces is that they’re free and you create as many as you want.

(tick) Unlimited spaces/projects are far from common, many content management tools (especially in the product docs and intranet realm) limit the number of project (spaces) that you can create. For example, Document360 offers just TWO workspaces in their Enterprise tier.

Anyway, so what’s the big idea?

Simple.

  1. Use Space A (source, draft) to create, edit, and maintain your content…

  2. Sync your content to from Space A to Space B (target, primary) where readers can enjoy it.

  3. After the initial pairing is established, the app maintains the connection and syncs both the content and the pages position in the trees.

No, it’s not mere copying. It’s an actual synchronization of your content - including metadata, third party apps data, and, crucially links.

image-20250417-155109.png

Typically, you start by designating the target space and initiating the first sync. This may take a while as you are effectively creating a carbon copy of your space AND establishing connections between page pendants.

After you edit a page in your source space, it goes out of sync. The apps I’m mentioning below offer comprehensive management tools that will display which pages are out of sync, how far behind they are, allow you to set up automated or manual sync, etc.

(info) As an admin, you should always have the privilege to edit pages in the target space. Just don’t forget to ensure you replicate the change in your source space. Unless you have an app that supports bi-directional syncing.

What do you need?

A synchronization app. There are several options on the Marketplace, I’m listing apps that I am either using in production environment or have tested (in alphabetical order).

  • Capable for Confluence by Capable
    An all-in-one app that combines space sync, workflow and content management.

  • Comala Publishing by Appfire
    One way synchronization between two space, integrates Appfire’s workflow apps.

  • Space Sync for Confluence by Ricksoft
    Multi-directional synchronization of spaces across multiple Confluence sites, integrates with Ricksofts Pages Manager.

  • Workflows for Confluence by Appfox
    Primarily a workflow app that offers space sync as an option for the final workflow step.

The following apps work with the sync concept in a rather different way or deploy space sync for a very specific purpose

  • Breeze by B1nary
    Primarily a workflow app that turns the concept of sync spaces 180 degrees. Your entire content is in your primary space. To edit a page, you create an ad hoc version in a designated workflow space. Unlike other apps that work with a carbon copy of spaces, Breeze works with the pages that you select.

  • Scroll Documents by K15t
    Primarily a document management app (semantic versioning, conditional content, localization) but allows you to publish a snapshot of a space to another. Recently introduced basic page-level workflow.

Must haves:

  • An sync app should allow you to choose between synchronizing ALL pages in the space or individual pages.

  • Ensure that the sync apps ‘converts’ links between pages in the source space to links between the pages in the target space. Apps typically achieve this with inline links. Which means you may need to rethink your linking policy.

  • Syncs apps should be able to preserve the page tree structure between the two spaces.

  • Check for ability so sync labels.

  • Synchronization report
    The following screenshot displays a comprehensive overview of out-of sync pages in a space.

    image-20250428-080811.png

Use-cases

Workflow tool

Working on content is usually an iterative process. As a result, whether you’re working on your AI usage policy, outlining new corporate benefits, or writing documentation for a new feature, you want to your audience (coworkers, customers) to see only the finished documentation.

A two-space setup allows you to work on specific pages in the source space and only sync them to the target space when they’re ready. Meahwile, your readers will have the last valid version at their disposal.

This effectively removes the need for a workflow app in scenarios that do not require stringent approval process. If you need to use a wproper workflow app, for example for compliance reason, you deploy it in the source space where only people with specific permissions will be able to access the unfinished content.

Which brings me to another advantage….

Simplify your content permissions/restrictions

A two space setup will allow you to easily control permissions for access to final and ‘work-in-progress’ content on the space-level.

Designate your target space with finalized content to be read-only for anyone who’s not an admin, and restrict access to your source space only to people you want (who need) to create and edit the content.

This is much easier to manage than restricting access to pages that are being worked on.

This is extremely useful when your target space is publicly available (open to anonymous access). Your source space can remain fully private, the risk that you accidentally ‘publish’ unfinished documentation are much lower.

Create a natural backup

This one is obvious… by keeping to spaces in sync, you alway have one backup.

But there’s a neat hidden advantage:

  • your source space keeps the history of every ‘save’.

  • your target space keeps the history of only the good, approved, final versions.

This can be useful when you need to track down various issues (errors, omissions, etc.) becasue the target space page history will narrow down the scope of typically more voluminous.

Advanced usecase scenarios

Make various apps work together

When building the product documentation life-cycle management framework at Emplifi, I had to find a way to publish any page at any time to a Scroll Viewport site while being able to keep any number of new or existing pages as drafts or ‘under review’.

Using two spaces is a part of the solution. I keep the workflow app in the source/draft space, once a writer approves a specific apage, it is automatically synced to the target space. The target space serves as a content source for Scroll Viewport. The two-space approach makes a series of apps, that were not designed with mutual compatibility in mind, work together.

This gives us unparalleled flexibility for content management in continuous delivery circumstances.

The sync apps also synchronize other apps' data (you can turn that on or off on some apps) and third party macros (the same applies to labels). For example, we sync data of Scroll Viewport and Scroll Documents (conditional macros). This means that you can really do all work in your source space while the target space remains passive.

There exceptions to the rule, but they concern really specific use-cases. For example, if you’re using Scroll Documents for semantic versioning, you need to create versions in your target space. Which is logical because that’s where your finished content lives.

Create hybrid spaces

In this scenario, you are synchronizing all pages from the source space to the target space while allowing users in the target space to create their own content.

You can use this method in along with hybrid pages with editable and not-editable content living side by side where I’m discussing possible use-cases.

(info) Keep an eye on your structure. It’s advisable not to mix synced and unique pages.

Create multi-tenant documentation … from a single source

Let’s revisit the idea in which your target space is designed for your customers, such as public documentation space.

Space Sync for Confluence allows you to sync pages from one source space

  • to several target spaces

  • across multiple external Confluence sites

image-20250427-163658.png

Of course, this requires the app to be installed on all Confluence sites. But it will allow you to

  • push docs to your clients' respective Confluence sites where they can use the space as a source of a theme app or a documentation center app.

  • push docs to your clients’ respective Confluence spaces on your site

For your internal use, this will alow you to, for example, distribute centrally managed content to your local sites.

Ultimate cooperation setup

Most sync apps allow only a one way sync. Space sync for Confluence allows bi-directional syncing. This can create an ultimate multi-space / multi-site cooperation network.

The app let’s you to specify who can perform sync and it works with Confluence page statuse, so you are in control of your synchronizations.

Permissions concerns

I can hear some admins screaming in fear that users will push content willy nilly across spaces. Apps I tested have methods of determining who can do what and with some common-sense governance, the apps are headache free.

Generally speaking, sync apps are treated as users so if they don’t have permissions to write to a target space, they won’t. For example, your Guest users can edit and save the page but they won’t be able to sync the content. Some apps let you specify which users/groups can perform syncs, workflow apps with sync capability typically tie the sync permission to the permissions associated with a specific workflow step.

Another thing to bear in mind is that even if an app has writing permissions to the target space, the syncing fails if the user who triggers the sync does not have writing permissions in the target space.

Final rule

Always sync the parent page first 😀

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.