Publish Rules
Automate approvals, rejections, tagging, and team alerts for your social media posts with Publish Rules.
A Publish Rule is an automated check that runs on your posts. You choose the profiles it covers, the event that fires it, the conditions it looks for, and what happens when they match.
Rules run on their own, so nobody has to remember to tag a campaign post, route content to the right approver, or flag a caption that shouldn't go out. This matters most when several people publish to the same profiles, where inconsistent messaging, skipped approvals, and compliance slips are easy to miss.
With Publish Rules, you can automatically assign tags, custom fields, post colors, or watchers; send posts for approval; trigger Slack, Microsoft Teams, email, or in-app alerts; and reject posts that fail your checks.
Learn more about Internal Tags, Custom Fields, Watchers in Publish, and Understanding Approval Workflows.
Who Can Do This?
Primary Owners, Owners, and Admins can create and manage Publish Rules. Publish Rules are available on the Premium and Enterprise plans. See full pricing details.
How Do I Create A Publish Rule?
There are two ways to fill in the Publish Rule Builder: describe what you want and let Statusbrew generate the rule, or complete each field yourself. Describing it is the quickest way to get started, and everything stays editable either way.

Go to Publish.
In the sidebar, click Publish Rule. The Publish Rules window opens.
Click Add new rule in the top right. The Publish Rule Builder opens.
In the Describe what you want to see field at the top, type what you want the rule to do, and click Generate. Statusbrew fills in the fields below. Skip this step to build the rule yourself.
Enter a Name for the rule so it's easy to identify later.
Select the Data sources the rule applies to. At least one is required.
Choose the Trigger type. Post created is selected by default. If you choose Post field changed, pick what the rule should watch under Watchable fields.
Click Add condition to add Filters (optional).
Click Add a new action to add Actions. At least one action is required.
Select Stop execution of following rules, if this rule is applied if you don't want later rules running on the same post (optional).
Open Additional options to set a time zone and the hours the rule should be active (optional).
Check every field before you save, especially anything the AI filled in or left blank. Actions like Slack Alerts, Send email, and Send post for approval still need you to pick the channel, recipient, or approver.
Click Submit.
You can also open Publish Rules directly from the Statusbrew dashboard.
Always check the rule before you submit it. The AI builder is in Beta and can get things wrong, and a rule that rejects or approves the wrong posts affects everything you publish. Confirm the trigger type, data sources, filters, and actions match what you intended.
Learn more about Creating Publish Rules Using AI.
What Are The Parts Of A Publish Rule?
Four components define how a rule behaves, whether you generate it with AI or build it yourself.
Data Sources
The data source decides which profiles the rule applies to. You can select individual social profiles or profile groups. Every rule needs at least one.

Profile groups are useful when you manage several brands, regions, or clients, because you maintain the group once instead of editing every rule.
Learn more about What Is A Social Profile and What Is A Profile Group.
Trigger Types
The trigger is the event that fires the rule. The available trigger types are:

Post created: someone creates a new post.
Post updated: someone edits an existing post, such as its caption, media, or scheduled time.
Post field changed: a post's tag, state, or one of your custom fields changes. Set what the rule watches under Watchable fields below.
Post deleted: someone deletes a post.
Post approved: a post is fully approved and clears its approval workflow.
Post step approved: one step of a multi-step approval workflow is approved, with steps still to go.
Post rejected: an approver rejects a post.
Post recalled: a post is pulled back from approval before a decision is made.
Post published: a post goes live on the network.
Post failed: a post does not publish.
You can select more than one trigger type in a rule. The rule runs every time any of the selected events happens on the profiles you chose.
Watchable fields
Selecting Post field changed adds a Watchable fields block above Filters. This is where you say which field to watch and what kind of change should fire the rule.
Click Add condition, then set the three parts of the condition:
Field: Tag, State, or any custom field set up in your space. Custom fields appear under the names your team gave them.
Change type: what has to happen to that field. The options depend on which field you picked.
Value: which specific tags, states, or custom field values the condition applies to. Select all sits at the top of the list.
For Tag and custom fields, the change types are:
changes: the value changes in any way.
gains: a value is added.
loses: a value is removed.
becomes set: the field goes from empty to having a value.
becomes empty: the field's last value is removed.
For State, the change types are:
changes: the state changes in any way.
changes to: the state changes to a specific value you pick.
becomes set: the field goes from empty to having a value.
becomes empty: the field's last value is removed.
Add another condition to watch more than one field in the same rule. Conditions are joined with "And" by default, so the rule fires only when every listed change occurs. Click the And label to switch it to Or if any one of the changes should be enough on its own.
Choosing the right change type keeps the rule quiet. A rule set to When Tag gains fires only when a tag is added, where When Tag changes also fires when one is removed.
Watchable fields and Filters both use Add condition and both use And / Or logic, but they do different jobs. Watchable fields decides what change fires the rule. Filters decide which posts the rule then applies to.
Filters
Filters are the conditions checked after the trigger fires. They narrow the rule down to the posts you care about. Click Add condition to add one.

The available filters are:
Post: Message Content, Tag, Message has attachments, Post Type, Post Format Type, Invited as Collaborator, Actor, State
Ad Campaign: Ad Campaign Name
UTM: UTM Campaign, UTM Source, UTM Medium, UTM Content
Any Post custom fields set up in your space also appear in the Post group, under the names your team gave them.
Filter logic: AND vs OR

AND logic: every condition must be met for the rule to run.
OR logic: any one condition is enough.
AND applies by default when you add a second filter. Click the logic label to switch it to OR. You can set the logic between filters and within a filter group.
Actions
Actions are what the rule does once the trigger fires and the filters match. Click Add a new action to add one. You can add several, and they all run together.

Conversation actions
Add watchers: adds watchers so they get updates on publishing activity for the selected profiles.
Post actions
Reject the post: rejects the post and attaches a rejection reason.
Send post for approval: sends the post to the approver or approval workflow you pick.
Add post color: applies a color to the post so it stands out on the calendar. Useful for spotting campaign posts, content themes, or regional posts at a glance.
Tag actions
Add tags: applies tags for categorization and reporting, so nobody has to remember to tag manually.
Remove tags: strips the tags you specify off the post.
Notification actions
Slack Alerts: posts an alert to the Slack channel you select.
Send notification: sends an in-app notification to the users or user groups you select.
Send email: emails the users or user groups you select, at their Statusbrew account address.
Send email to external users: emails people outside your Statusbrew space. Add their addresses directly.
Microsoft Teams Alerts: posts an alert through the Microsoft Teams connector you've added.
Custom fields
The custom fields set up in your space are listed here by name. Select one, and the rule updates its value when your conditions are met.
Reject the post and Send post for approval only work with the Post created and Post updated triggers. Pick one of those as your trigger type, or these two actions never run.
Learn more about Slack Integration and Microsoft Teams Integration.
How Do I Manage Publish Rules?
Go to Publish > Publish Rule to see every rule you and your team have set up. Rules are grouped as:
Active rules: currently running.
Paused rules: temporarily switched off.
Edit a rule

Click More beside the rule you want to edit.
Select Edit rule. The Edit rule window opens.
Make your changes.
Click Submit.
Duplicate a rule

Click More beside the rule you want to copy.
Select Duplicate rule. The window opens with the same configuration.
Change the name and anything else you need.
Click Submit.
You can Dupliacte Publish Rule from one space to another. Make sure to select the correct Data source and review the rule before hitting save.
Pause a rule

Click More beside the rule you want to pause.
Select Edit rule.
Click Pause rule and confirm.
The rule stops acting on posts and moves to the Paused rules list. To bring it back, open Edit rule on the paused rule and click Activate rule.
Delete a rule

Click More beside the rule you want to remove.
Select Delete.
Click Delete rule to confirm.
Deleted rules cannot be recovered. If you might want the rule again later, pause it instead.
How Do I Control The Order Rules Run In?
Rules run top to bottom in the order they appear in your Publish Rules list. A post can match several rules and have all of them applied.
Drag and drop a rule in the list to move it up or down. Its new position changes when it runs relative to the others.
To stop that, turn on Stop execution of following rules, if this rule is applied. When that rule fires, nothing below it runs, even if the conditions match.
How Do I Run A Rule Only During Certain Hours?
Open Additional options at the bottom of the Publish Rule Builder.
Select a Time zone so the schedule follows your business hours or your regional team's day.
Under Add hours, click Add times and choose a day and a time range, for example Monday 09:00 to 17:00.
Click Add times again to add more days and blocks.
If you don't set any hours, the rule runs 24/7.
Publish Rule Examples
Some useful rules, based on real use cases.
Send all intern-created posts for approval
Your interns draft posts, and you want everyone to review them before they publish.
Trigger type: Post created
Filter: Actor > In(=) > the Interns user group
Action: Send post for approval > the approver or approval workflow
Route brand awareness content to its own approval workflow
Your Brand Awareness content goes through a dedicated workflow, and you'd rather not route each post by hand.
Trigger type: Post created
Filter: Tag > In(=) > Brand Awareness
Action: Send post for approval > the Brand Awareness approval workflow
Auto-tag campaign posts for consistent reporting
Your team keeps forgetting to tag campaign posts, leaving gaps in your reports.
Trigger types: Post created, Post updated
Filter: Message Content > In(=) > Halloween
Action: Add tags > Halloween Campaign
Send Slack alerts for published posts
You want the whole social team to see what went live, in the channel they already watch.
Trigger type: Post published
Filter: State > In(=) > Published, Published via Notification
Action: Slack Alerts > your Slack team and the #social-published-posts channel
Alert the team when a new tag is added to the existing tags in a post
Someone changes a post's tag or custom field to mark it ready, and the people waiting on it need to know without being told.
Trigger type: Post field changed
Watchable fields: When Tag gains > the tag that marks the stage
Action: Send notification > the users or user groups who need to know
Reject posts containing sensitive topics
You want posts that mention sensitive subjects to be stopped before anyone can publish them.
Trigger types: Post created, Post updated
Filter: Message Content > In(=) > religion, politics, election, government
Action: Reject the post > a rejection reason such as Sensitive topic
This rule uses Post created and Post updated because Reject the post does not run on any other trigger.
FAQs
Why Didn't My Publish Rule Run?
Work through these in order:
The rule is in the Paused rules list.
The trigger doesn't match what happened. A rule set to Post created won't fire when someone edits an existing post.
The action isn't compatible with the trigger. Reject the post and Send post for approval only run on Post created and Post updated.
Your filter logic is stricter than you intended. With AND, every condition has to match.
The post fell outside the hours set under Additional options, or the time zone isn't the one you expected.
An earlier rule in the list has Stop execution of following rules
turned on and fired first.
Can One Rule Do Several Things At Once?
Yes. Add as many actions as you need with Add a new action and they all run when the rule fires. You can tag a post, send it for approval, and post a Slack alert from a single rule.
What Is The Difference Between Pausing And Deleting A Rule?
Pausing keeps the rule and its configuration and stops it from acting on posts until you activate it again. Deleting removes it permanently and cannot be undone. Pause when there's any chance you'll want it back.
Can I Reuse A Rule I Have Already Built?
Yes. Click More beside the rule and choose Duplicate rule. You get a copy with the same configuration, ready to be renamed and adjusted.
How Is Post Field Changed Different From Post Updated?
Use Post updated when you care about the post's content changing, such as a caption rewrite or an image swap. Use Post field changed when you care about how the post is classified: its tag, state, or one of your custom fields. Set which field to watch, and what kind of change counts, under Watchable fields.
You can also select both in the same rule, along with any other trigger type, if you want the rule to catch content edits and field changes.
Post field changed is also what you use to chain rules. Pair it with a custom field action so one rule sets a custom field and a second rule reacts to that change.
What Is The Difference Between Watchable Fields And Filters?
Watchable fields appears only when your trigger is Post field changed. It defines the change that fires the rule, for example When Tag gains.
Filters narrow which posts the rule applies to once it has fired, for example, only posts on a certain profile or with certain content.
Both use Add condition, and both use And / Or logic, so check which block you are adding to. A condition in the wrong one either prevents the rule from firing or causes it to fire on posts you did not intend.
Can I Apply One Rule To Every Profile At Once?
Select a profile group as your data source instead of picking profiles one by one. The rule then covers everything in the group and stays current as you add or remove profiles from it.