Skip to content

Publish for multiple audiences

This feature requires the Enterprise capability tier (the Business ). During the beta, every project is on the free Solo tier, so this feature is locked by default: go to Settings ▸ Billing and request Enterprise access to unlock it.

This tutorial walks you through Publish a web site two versions of the same documentation from a single source: one for administrators and one for end users. You will use conditions to filter content and variables to swap values.

Before you begin

What you will build

A three-topic guide that shows admin-only content to admins and hides it from regular users. Variables swap out the product name and support URL so each audience sees their own values.

Set up filters

Filters define the axes along which your content varies.

  1. Open Configure and select the Filters tab.

  2. Type "Audience" in the name field and click Add group.

  3. In the group's Add a value field, add two values: "Admin" and "End User."

Each value gets a distinct color. These colors appear in the editor to show which content is conditioned.

Set up variable sets

Variables hold values that differ between Publication target settings, like product names, URLs, or version numbers.

  1. Open Configure and select the Variables tab.

  2. Type "Admin Edition" in the name field and click Add set to create a Create variable sets.

  3. In that set's card, add these key-value pairs:

  4. Add a second set called "End User Edition" with:

The two sets as JSON:

{
  "product_name": "Acme Pro Admin Console",
  "support_url": "https://admin-support.acme.com"
}

Both variable sets must contain the same keys (product_name and support_url). If a key is missing from one set, the raw key name appears in the published output for that target.

Write conditioned content

  1. Go to Topics and create a topic called "Dashboard Overview."

  2. Write a paragraph that applies to everyone: "The dashboard shows your recent activity and important metrics."

  3. Below it, write a paragraph intended only for admins: "The admin panel at the top provides access to user management, audit logs, and system configuration."

  4. Select that admin-only paragraph.

  5. Click the filter icon ("Wrap in condition") in the editor toolbar.

  6. In the Wrap in condition dialog, choose the "Audience" filter group, select "Admin," and click Apply Condition.

The paragraph is now wrapped in a colored conditional block labeled "Audience: Admin." End users will not see it.

Insert variables

  1. In the same topic, type "Welcome to " then place your cursor.

  2. Click the variable icon ("Insert variable") in the editor toolbar and pick product_name from the Insert variable dialog.

  3. A styled pill appears showing the variable key. At publish time, it resolves to the value from the selected Create variable sets.

  4. Add another variable reference for support_url in a "Need help?" sentence.

Preview conditions in the editor

  1. Click the eye icon in the editor toolbar to open Preview conditioned content.

  2. Select "Audience: Admin" to see the full content including the admin paragraph.

  3. Switch to "Audience: End User." The admin paragraph disappears from the preview.

This lets you verify conditioned content without publishing.

Create two more topics

  1. Create "Account Settings": add general content plus an Admin-conditioned section about managing other users' accounts.

  2. Create "Getting Help": use the support_url variable so each audience sees their own support link.

Build a map and publish two targets

  1. Go to Maps and create a Create and organize a map called "Product Guide."

  2. Add all 3 topics.

  3. Open the map's Manage publishing page and create two publication targets. For each target, set its condition profile and pick its variable set in the target settings:

Admin Docs (Web):

  • Condition profile: Audience = "Admin"

  • Variable set: "Admin Edition"

{
  "Audience": ["Admin"]
}

End User Docs (Web):

  • Condition profile: Audience = "End User"

  • Variable set: "End User Edition"

{
  "Audience": ["End User"]
}
  1. Publish a web site both targets.

Compare the results

Open both published sites. The Admin version shows all content including the admin-only sections, with "Acme Pro Admin Console" as the product name. The End User version hides the admin sections and shows "Acme Pro" with the standard support URL.

Topicary generates both sites from the same source topics. When you edit a topic, clicking Update on a target refreshes that variant.

After editing a conditioned topic, always click Update on all targets that use that topic. If you only update one target, the other targets show stale content until they are updated too.

What you learned

  • Conditions control which content blocks appear for each audience, platform, or any filter group you define

  • Variables substitute different values (names, URLs, versions) for each publication target

  • Preview conditioned content lets you check audience-specific content without publishing

  • Each publication target selects a condition profile and variable set

  • One source produces any number of output variants

Next: Collect feedback from reviewers to learn how to get subject matter expert input before publishing.


See also

Was this page helpful?