Campaign Planning & UTM Parameter Automation
What this document covers: This guide explains how to use Campaign Planning and UTM Automation in Emplifi Publisher. It covers creating and managing campaigns, assigning posts to campaigns, configuring UTM tracking parameters with dynamic variables, viewing campaigns across the calendar and feeds, and understanding the limits, caveats, and access rules that govern the feature.
Overview
Campaign Planning with UTM Automation is a feature in Emplifi Publisher that lets marketing teams create structured campaign records, attach social media posts to those campaigns, and automatically generate UTM-tagged URLs for every link in those posts — all without manually editing tracking parameters on each piece of content.
A campaign in Publisher is a container that holds your dates, creative brief, color coding, a unique identifier, default labels, and UTM parameter presets. Once configured, every post assigned to the campaign inherits these settings automatically at the point of scheduling or publishing.
Why This Feature Exists
Managing UTM parameters across dozens or hundreds of social posts is error-prone and time-consuming when done manually. Different team members apply different conventions, typos slip in, and it becomes impossible to reliably attribute campaign performance in analytics platforms.
The Campaign Planning feature solves this by centralizing configuration. Key use cases include:
Multi-brand campaigns that require precise per-country, per-asset, and per-channel attribution in analytics platforms like Adobe Analytics or Google Analytics.
Large marketing teams where admins define the tracking strategy once and content managers simply pick a campaign — no UTM knowledge required.
Agencies managing multiple brands who need audit-ready, non-removable tracking labels on every post to prove campaign association retroactively.
Any organization that needs to cross-reference social post performance data with internal CRM or BI tools using a shared unique campaign identifier.
Teams using URL shorteners who still need per-platform UTM data, since the system generates a distinct shortened URL for each social network when a dynamic social channel variable is used.
Feature Availability
Note: Campaign Planning is available on Enterprise plans. Contact your Emplifi account manager or organization administrator if the Campaigns section is not visible in your Publisher calendar.
User Roles & Permissions
Campaigns enforce a two-tier permission model. The table below summarizes what each role can do.
Action | Admin User | Standard User |
|---|---|---|
Create a new campaign | ✅ Yes | ❌ No |
Edit campaign (name, dates, brief, labels, UTM) | ✅ Yes | ❌ No |
Delete a campaign | ✅ Yes | ❌ No |
View campaign details (read-only) | ✅ Yes | ✅ Yes |
Assign a post to a campaign | ✅ Yes | ✅ Yes (with post edit rights) |
See campaign color on calendar / feeds | ✅ Yes | ✅ Yes |
Remove default labels from a post | ✅ Yes | ✅ Yes (with post edit rights) |
Edit campaign Unique ID | ❌ Read-only after creation | ❌ Read-only |
Concurrent Edit Lock: Only one user can edit a campaign at a time. When another user opens the campaign editor, they will see a read-only view with a notice that the campaign is currently being edited. This prevents conflicting changes from overwriting each other.
Creating and Managing Campaigns
Creating a Campaign
Campaigns are created from the Publisher calendar. Hover over an empty slot in any calendar view (day, week, or month) to reveal the Create Campaign button, then click it to open the campaign editor.
Campaign Name
A human-readable label for the campaign. Displayed in the calendar row, on post wall-items, and in feeds. Choose a clear, consistent naming convention across your organization.
Start and End Dates
Define the time span of the campaign. Posts can only be scheduled within this date range — if you attempt to schedule a post outside the campaign window, the system will display a validation banner and prevent you from proceeding.
Date Range Validation: You cannot schedule or publish a post that is assigned to a campaign if the post's scheduled time falls outside the campaign's start–end range. This applies to all social networks. Make sure your campaign dates encompass all the content you plan to publish.
Color
A visual color tag for the campaign. This color is displayed as an outline on wall-items in the calendar and as a badge in feeds, making it easy to distinguish multiple concurrent campaigns at a glance.
Unique ID
A unique alphanumeric identifier for the campaign.
The Unique ID must be unique across all campaigns in your organization — the system will reject duplicates on save.
Once set, the Unique ID is read-only for all users (including admins). It cannot be changed after the campaign is created.
The Unique ID is automatically turned into an immutable tracking label that is appended to every post assigned to the campaign (see Automatic Tracking Label section).
Brief
A rich text editor is available under the Brief tab of the campaign editor. Use it to document creative direction, brand guidelines, reference imagery, and background context.
Supported content types in the Brief:
Formatted text (bold, italic, underline)
Bullet point lists
Images (pre-viz, mood boards, etc.)
Hyperlinks
Embedded videos
Editing a Campaign
Admins can modify a campaign's Name, Dates, Color, Brief, Default Labels, and UTM Presets at any time after creation. The Unique ID field is permanently read-only once the campaign has been saved.
Important — Changes are not retroactive: Changes to Default Labels or UTM Presets on an existing campaign do NOT retroactively update posts that have already been assigned to the campaign. Only posts assigned after the change is saved will inherit the new settings. Similarly, if you modify UTM presets after posts have already been scheduled, those scheduled posts retain the UTM values that were active at the time they were scheduled.
Deleting a Campaign
Admins can delete a campaign via the campaign editor after confirming a prompt. Deletion is a soft-delete — the campaign record is preserved in the system for analytics and audit purposes but is no longer displayed in the calendar or available for new post assignments.
Assigning Posts to a Campaign
How to Assign
When creating or editing a post in the Publisher editor, a Campaign selector appears in the editor header. Select the desired campaign from the dropdown. The system saves the association between the post and the campaign.
Key behaviors:
A post can only be assigned to one campaign at a time. Switching to a different campaign removes all labels applied by the previous campaign and applies the new campaign's labels.
You cannot assign a post to a campaign that has already ended.
Automatic Tracking Label
Immediately when a post is assigned to a campaign, the system automatically appends a system-generated tracking label to the post. This label contains the campaign's Unique ID.
The tracking label is immutable — neither content managers nor admins can remove or modify it from within the post editor. It is enforced by validation.
The tracking label cannot be removed from the Labels settings panel for an active campaign.
This label is your permanent, audit-proof record that the post belongs to the campaign. It survives edits and re-publications.
Why the tracking label cannot be removed: The immutability of the tracking label is intentional. It guarantees that any analytics platform or internal reporting system using the campaign Unique ID as a filter can always find all associated posts — even after the campaign has ended or the team has changed. Allowing removal would create silent gaps in attribution data.
Default Content Labels
In addition to the immutable tracking label, admins can define a set of Default Labels at the campaign level. These labels are automatically applied to every new post assigned to the campaign.
Default Labels are user-editable. Content managers can add, modify, or remove them from a specific post if needed.
Default Labels are not retroactive. Changing the default labels on a campaign will not update posts already assigned to it.
Default Labels are applied in addition to the automatic tracking label.
UTM Parameter Configuration
What Are UTM Parameters?
UTM (Urchin Tracking Module) parameters are tags appended to URLs that tell your analytics platform where traffic came from. For example, a URL like:
https://yoursite.com/page?utm_source=facebook&utm_medium=social&utm_campaign=spring2026&utm_content=Post-12345
…allows your analytics team to filter all traffic by source (Facebook), channel (social), campaign name, and the specific piece of content that drove the click.
Emplifi Publisher generates and appends these parameters automatically when a post is scheduled or published, based on the presets you configure at the campaign level.
Configuring UTM Presets on a Campaign
In the campaign editor, a dedicated UTM section lets admins define values for each of the four standard UTM parameters. Each parameter accepts a mix of free-text and dynamic variables.
UTM Parameter | Type | Description |
|---|---|---|
utm_source | Static or Dynamic | The platform the traffic came from. Typically populated with the social channel dynamic variable so it auto-resolves to e.g. facebook, instagram, linkedin. |
utm_medium | Static or Dynamic | The marketing channel. Commonly set to the static value 'social' for all social media campaigns. |
utm_campaign | Static or Dynamic | Campaign identifier. Often populated with the Campaign Unique ID dynamic variable for automatic attribution. |
utm_content | Static or Dynamic | Content differentiator. Can be a composite value mixing static text and dynamic variables such as Asset ID and Country ID. |
Dynamic Variables
Instead of typing a fixed value, you can insert a dynamic variable that the system resolves automatically at the moment the post is scheduled or published. The following variables are available:
Variable | Resolves To | Fallback if Unavailable | Typical Usage |
|---|---|---|---|
{CampaignUniqueID} | The campaign's Unique ID string | — (always available) | utm_campaign |
{SocialChannel} | The social platform name (e.g. facebook, instagram, linkedin, x, tiktok) | — (always available at publish time) | utm_source |
{AssetID} | The internal identifier of the media asset(s) attached to the post. Multiple assets are separated by a comma. | none | utm_content |
{CountryID} | The country code from the social profile's settings (1 profile = 1 country) | none | utm_content |
Mixing Static Text and Dynamic Variables
You can compose any UTM parameter value using a combination of static text and multiple dynamic variables. For example:
utm_content = BD~{CampaignUniqueID}_{AssetID}_MK~{CountryID}
When a post with this configuration is scheduled to Instagram in France, the system would produce a utm_content value like:
BD~CAMP001_img_78342_MK~FR
This composite value allows analysts to parse out the brief ID, asset, and country directly from the URL string in their analytics tool.
When UTMs Are Resolved
Dynamic variables are resolved at the time the post is scheduled, saved as a draft, or submitted for approval — not when you type them in the UTM builder. This means:
The editor shows unresolved variable placeholders (e.g. {SocialChannel}) until the post is actually scheduled.
For common (non-customized) multiposts — posts that go to multiple networks without network-specific customization — the placeholders remain visible as-is in the calendar and feeds view after scheduling. This is expected behavior; the actual resolved URL is what gets published.
Post templates preserve the unresolved variable syntax. When a template is used to create a new post, the variables are resolved at the time that new post is scheduled.
UTM Parameters and URL Shortening
UTM parameters work alongside Emplifi's URL shortening feature. When a UTM preset includes the {SocialChannel} dynamic variable, the system generates a distinct shortened URL for each social network in the post. This means a multipost going to Facebook, Instagram, and LinkedIn will produce three different shortened URLs, each with the correct platform name resolved in the utm_source parameter.
Important: The {SocialChannel} macro is resolved at the time of URL shortening. Each network in a multipost gets its own unique shortened link. This is necessary because the social channel name differs per platform and must be embedded in the URL before shortening.
UTM Builder in the Post Editor Side Panel
In addition to campaign-level UTM presets, the URL UTM builder is also available in the post editor side panels (via the Add Link and Edit URL options). The same dynamic variable dropdown — including Unique ID, Social Channel, Asset ID, and Country ID — is available there, allowing you to apply UTM tracking even to posts that are not assigned to a campaign.
Viewing Campaigns
Calendar Views
Campaigns are displayed in all three calendar views — Day, Week, and Month.
Note: If a post is assigned to a campaign whose date range extends beyond or starts before the currently displayed calendar view, the campaign color outline will still appear on the post's wall-item. Campaign visibility is not limited to the campaign's own date range in the calendar.
Feeds
In the Publisher feeds view, every post assigned to a campaign displays the campaign name as a badge on the wall-item, along with the campaign color. This makes it easy to scan large volumes of content and filter by campaign.
You can also filter the feed by the campaign's automatic tracking label (which contains the Unique ID) to display only posts associated with a specific campaign.
Post Editor Header
When you open an existing post that is assigned to a campaign, the campaign name is shown in the post editor header. This gives content managers immediate context about which campaign a post belongs to while editing.
Limits & Constraints
The following hard limits apply to this feature. These cannot be bypassed by any user role.
Constraint | Detail |
|---|---|
Posts per campaign | Unlimited |
Campaigns per post | 1 — a post can be assigned to only one campaign at a time |
Unique ID uniqueness | Must be unique across all campaigns in the organization; duplicates are rejected on save |
Unique ID mutability | Read-only after initial creation; cannot be changed by any user |
Tracking label removal | The system-generated Unique ID tracking label cannot be removed from a post by any user |
Assigning to a finished campaign | Not permitted — a post cannot be assigned to a campaign whose end date is in the past |
Post scheduling outside campaign dates | Blocked — the system prevents scheduling a post outside the campaign's start–end date range |
Concurrent campaign editing | Only one user can edit a campaign at a time; the second user sees a read-only view |
Campaign sharing | Campaign records cannot be shared externally in this version |
UTM variable: Post ID | Not available in this version; planned for a future Advanced Campaign Planning release |
Country ID source | Sourced from the social profile's country field; 1 profile = 1 country; falls back to 'none' if not configured |
Asset ID with multiple assets | When a post has multiple assets, all Asset IDs are included, comma-separated |
UTM parameter visibility in templates | Macros are stored unresolved in saved templates; they resolve when the template is used to create a new post |
UTM updates retroactivity | Changing UTM presets on a campaign does not update already-scheduled posts |
Campaign export | Campaign rows are not included in calendar exports in this version |
Caveats & Important Notes
UTM Changes Do Not Update Scheduled Posts
Critical: If you modify the UTM presets on a campaign after posts have already been scheduled, those scheduled posts will retain the original UTM values that were active when they were scheduled. The system does not retroactively update URLs in already-scheduled posts. If consistent UTM tracking is critical for an ongoing campaign, finalize your UTM presets before scheduling any posts.
Default Labels Are Not Retroactive
Adding or changing Default Labels in a campaign's settings will only affect posts assigned to that campaign after the change is saved. Previously assigned posts keep the labels they had at the time of assignment. If you need to update labels on existing posts, you must do so manually on each post via bulk action.
Switching Campaigns on a Post
If you change a post's campaign assignment to a different campaign, the system removes all labels that were applied by the original campaign (including default labels from that campaign) and applies the new campaign's labels. The original campaign's automatic tracking label is removed and the new campaign's tracking label is added. Do this deliberately and only when you intend a full reassignment.
Dynamic Variables in Multipost
For a common multipost (one post sent to multiple social networks without per-network customization), the {SocialChannel} variable resolves differently for each network. In the calendar and feeds view, you will see the unresolved placeholder text (e.g. {SocialChannel}) displayed on the wall-item for common multiposts — this is expected and correct. The actual resolved value is written into the URL at the point of publishing for each respective network.
Country ID Requires Profile Configuration
The {CountryID} variable only resolves correctly if the social profile has a country configured in its settings. If no country is set, the variable resolves to the fallback value none. Verify that all relevant profiles have country data populated before relying on this variable for analytics.
Campaign Deletion Is Soft
Deleting a campaign does not erase its data. The campaign record is retained in the system for historical analytics and reporting. Deleted campaigns no longer appear in the calendar or in the campaign selector dropdown when assigning posts.
Common Workflows
Set Up a New Campaign with UTM Tracking
Open the Publisher calendar and hover over any empty slot in the campaign row to reveal the Create Campaign button.
Enter the Campaign Name, Start Date, and End Date.
Select a Color to visually identify the campaign in the calendar.
Provide a Unique ID. Remember: this cannot be changed later.
(Optional) Write a Brief describing the campaign objectives, creative direction, and reference assets.
(Optional) Add Default Labels that should be applied to all posts in this campaign.
In the UTM section, configure your UTM presets. Use static values or dynamic variables as appropriate (see Dynamic Variables section).
Save the campaign.
Create and Assign a Post to a Campaign
Create a new post in the Publisher editor.
In the editor header, click the Campaign selector and choose the relevant campaign from the dropdown.
The automatic tracking label and any default labels are immediately added to the post.
Add your post content, images, and links. If a link is present, the UTM presets from the campaign will be appended automatically.
Schedule or publish the post. UTM variables are resolved at this point.
Add a UTM Link Manually in the Post Editor
In the post editor, click Add Link or Edit URL in the side panel.
Enter the destination URL.
In the UTM builder fields within the side panel, select static values or dynamic variables from the dropdown.
A preview of the final URL (with UTMs appended) is shown before you save.
Save the link. The UTMs will be resolved and appended when the post is scheduled.
Glossary
Term | Definition |
|---|---|
Campaign | A container record in Emplifi Publisher that groups related social posts under a shared name, date range, Unique ID, color, and UTM configuration. |
Unique ID | A non-editable, system-wide unique identifier assigned to each campaign. Used in the automatic tracking label and as a UTM variable. |
Tracking Label | A system-generated, immutable content label applied to every post assigned to a campaign. Contains the campaign's Unique ID. Cannot be removed by users. |
Default Labels | User-configured labels defined at the campaign level that are automatically applied (but are user-editable) to posts upon assignment. |
UTM Parameters | Querystring tags (utm_source, utm_medium, utm_campaign, utm_content) appended to URLs to enable marketing attribution in analytics platforms. |
UTM Preset | The UTM configuration defined at the campaign level. Can include static text and dynamic variables. |
Dynamic Variable | A placeholder like {SocialChannel} or {AssetID} that is automatically replaced with a real value at the time the post is scheduled or published. |
Brief | A rich text area within the campaign editor for storing creative direction, reference images, embedded videos, and campaign documentation. |
Multipost | A single post distributed to multiple social media networks. Each network can have the same content (common multipost) or customized content. |
Wall-item | The visual representation of a scheduled post in the Publisher calendar or feeds view. |
Soft Delete | A deletion method that hides the record from view but retains its data in the system for historical analytics and audit purposes. |