The Ultimate Guide to Building Slack Workflows in 2023
Learn everything about how to build Slack workflows to automate tedious, manual processes.
Building Slack workflows is the secret to overcoming the inefficiencies that emerge as organizations get larger.
We all need processes to help our teams stay organized and move work forward. But, these processes are tediously manual. We've all had the experience of work disappearing into the black hole of Slack DMs or crowded team channels.
But what if we had a way to structure our processes into forms that people fill out in Slack that automatically route their requests to the right people to follow up? That's where Slack workflows can help.
What's a workflow?
A workflow is a multi-step process in your company. It's the work that happens in order to accomplish a business objective.
What are examples of workflows?
- 📫 Triaging requests from other teams for help
- 📑 Getting a new sales contract approved
- 📢 Reviewing and publishing a new blog post
- 🙋♀️ Requesting a new piece of marketing collateral
- 📄 Submitting a customer support ticket
- 🧑🔧 Onboarding a new employee
- 📲 Reporting and fixing a software bug
- 👩💻 IT or facilities help desks
Workflows have a sequence of steps
Any of these workflows comprises of several stages of work that often happen in a specific order.
Think of a process at your company, like a hiring manager getting approval to make an offer to a job applicant. We want to gather information from the hiring manager, like the intended salary, job title, department, etc. Then we may want to route it to get approved by several people — the department head, perhaps someone in HR to ensure the seniority and salary align with other departments, and maybe someone in finance to verify we have room in the budget.
What is workflow automation?
Workflow automation is when software takes the tedium out of multi-step, multi-team workflows. With software, you can ensure the right steps are followed and work is completed.
Lots of things could go wrong when processes are done manually. Take the hiring workflow from the previous section, for example. Managers may hire infrequently and have to inquire about the right process. They may not include all the relevant details when they submit the request to hire. The department head might forget to check with finance to see if there's enough budget. Or, the request could be lost within messages in that really busy Slack channel. Requests get lost in our increasingly remote workforce due to time differences.
These problems could be avoided if we structured our workflows into an app to ensure things happen in the right order and way. For instance, we could have a form to gather the information we need from the hiring manager, so we never have to go back and ask for the same information. That saves a ton of time and frustration. This app can also request approval from the three approvers and access to sign off on the hire. Then, once things are approved, and the offer is accepted, our workflow could assign tasks to IT to buy the new hire a laptop or set up orientation meetings. Finally, all of this activity could be then logged in a spreadsheet for audibility, or the offer details sent to an HR app to update the employee's attributes there.
Putting workflows into an app ensures we can audit our process because the progress on each step is documented. That way, we can find incomplete tasks and ensure everything is attended to.
Automating this process like that is what we call workflow automation.
The two kinds of workflow automation
There are actually two kinds of workflow automation used by many teams:
- ⚙️ Data-driven workflow automation: When automation listens for changes in one app and updates data in another app. For instance, you might have automation that triggers when a lead requests a demo on our website, which then creates a lead in our sales CRM. This kind of automation helps us keep data in sync across multiple apps. Companies like Zapier and tray.io focus on data-driven workflows.
- 🙋 Human-driven workflow automation: When automation is triggered by one person or team that then routes a work item along a set of steps for other teams to take action — like getting approvals, assigning tasks, or asking for information. For instance, you might have automation where someone needs to build a quote for a services contract. They could specify the details of what the customer needs via a form, which is then routed to our delivery team to estimate hours. Once they are done, the system could automatically route it to sales leadership to sign off before triggering a task for the sales person to send the approved quote. Human-driven workflow automation can be handled in Slack via Slack's Workflow Builder feature, using Wrangle's steps for approvals and tasks. Workflow Builder is integrated with Zapier, so you can cover both kinds of automation in one continuous workflow.
Benefits of workflow automation in Slack
Here are some benefits of workflow automation in Slack.
Organize a busy channel of requests
Most teams in Slack have a public channel where other teams can post requests for help. Pretty soon, these become overwhelming — it's hard to track if a manager has approved the team working on the request and if the work got done. We can automate responses to these requests using Slack Workflows to ensure someone is assigned to handle them.
Put structure on the request with forms
We can have people fill out a form or trigger a workflow from data changing in another app. Now we don't have to manually ask people for more context on their request, speeding up the process.
Eliminate manual notifications
So many processes rely on remembering to message the next person in the chain (if we even know who we're supposed to get involved with). Then we have to wait on them to reply. Sometimes it's really hard even to know if they completed the request we sent or whether it got lost in a Slack DM.
No need to teach the process
Let's face it: no one wants to read our meticulous process document and keep up as we change things. With automation, the process owner can configure the system to route work to the right approvers or contributors, but no one else has to read a document to learn the process. The workflow automation just handles it.
Look back at decisions later
We can audit our decisions later if we get these manual processes out of DMs and into an app that integrates with Slack Workflows like Wrangle. No more searching through Slack trying to find the context of where someone individually signed off in a DM.
Work across time zones
When teams are spread across time zones, having other teams post requests to a channel doesn't work. When the team in another time zone gets online, the request might be buried by hundreds of subsequent messages. Workflows ensure we can notify specific people in response to the request posting, so they don't have to review the whole channel to see if there's anything relevant for them.
Interface with data-driven workflow automation
The activities humans take in a human-centred workflow, like filling data into a form, could then be routed via a data-driven workflow tool to update various apps.
Slack's Workflow Builder feature
Slack's Workflow Builder is a good place to start with basic automation inside the chat platform. Workflow Builder lets you build multi-part automation: when something happens, post a message or a form to a channel or DM (see the full list of triggers and actions below).
For instance, when a new member joins a channel, automatically send them a pre-written welcome message explaining what the channel is used for. Or, you can build a form to structure a request, say for an IT help request, and post that in the IT channel for someone to follow up on.
If you use Zapier, this should sound pretty familiar (in fact, you can do most of these simple automation in Zapier as well).
Workflow Builder and Enterprise Key Management (EKM)
Slack Enterprise Key Management (EKM) is a security feature that allows organizations to manage their Slack workspaces. It is a security add-on for the Enterprise Grid plan. This feature offers organizations greater control over their data, messages, and files by enabling them to encrypt data in transit and at rest. Hence no unauthorized person can have access to their data.
All this is possible through self-generated encryption keys stored in Amazon's Key Management Service. These keys are, however, managed entirely by the organization rather than by Slack. Thus, complete control for the organization as to who has access to their data. It also mitigates any possible risks of Slack data breaches and helps them comply with industry regulations.
It is, however, important to know that EKM is only available for workflows, data sent, or collected data created on or after 14th May 2020.
Where to find the Workflow Builder in Slack
Slack's Workflow Builder can be found in the top left of Slack. Click on the name of your workspace, go down to Tools, and then you'll see Workflow Builder. You can also open Workflow Builder from any channel by typing "/" or clicking on the Shortcuts menu (⚡️ icon in the message reply box at the bottom) and then searching for "Open Workflow Builder." You must be on a paid Slack plan to use Workflow Builder.
Triggers in Workflow Builder
Slack's Workflow Builder lets you trigger your automation when one of several things happens:
- Shortcuts menu: People can click on your workflow from the Shortcuts menu (that's the ⚡️ lightning bolt icon next to the chat window at the bottom of a channel in Slack)
- New channel member
- Emoji reaction: Any time someone reacts to a message using an emoji reaction
- Scheduled date & time: Launch a workflow on a recurring schedule, like every Monday
- Webhook: This one is more advanced. It allows developers to trigger a workflow when something happens in an app they've built. Something like Zapier could also be used to trigger the webhook to start a Slack workflow.
Actions in Workflow Builder
Once your workflow has been started by one of the Triggers listed above, you can then automatically take one of two actions inside Slack:
- Send a message: Send a message to a channel or directly to a person. You can pre-define the message and even use merge fields to customize it using data from a form
- Send a form: Send a custom form with fields you define, either to a channel or directly to a user in your Slack organization.
- Actions from Apps: Slack only provides the two actions above. For the rest of what you need to automate your workflow, Slack allows third-party apps to provide more Actions for Slack Workflows. Wrangle provides steps to assign tasks and approvals so you can ensure that work gets triggered in response to requests in your workflow and easily track work completed and outstanding.
What kinds of things can you do with Workflow Builder?
You could manage approvals in Slack for things like time-off requests, purchase approval, signing off on sales contracts, and reviewing content for marketing. These can be very helpful in keeping track of decisions by allowing users to click a button to say they are approving. Use Wrangle to start an Approval within a Slack workflow.
You could automatically route tasks to HR teams while onboarding a new employee. Tasks like purchasing their laptop or scheduling a getting-to-know-you lunch with you. Or, during customer onboarding, you could have automation that triggers the customer success team to schedule a kick-off call with the client when a deal is closed in your sales CRM. You can use Wrangle to start a Task List within a Slack workflow.
Using automation to send messages at certain times can be really useful in Slack. You could have an automation that welcomes new employees to a channel when they join. Or you could have automatic status updates posted in a channel as we progress on a multi-step workflow like onboarding a customer. Or, just a simple celebratory message in a channel when a deal closes in our CRM.
Most Slack workflows target ticketing use cases where one group asks another for help. Using form steps in a workflow guarantees you gather all the context necessary to process the request. Many processes require gathering data in the right format at various steps. If you approve a request to purchase a new piece of software, you might want the purchaser to fill out a structured form with details on how many people will be licensed to use the software. In a marketing content review, you may want your staff to detail the intended audience for the content or where they hope to syndicate it.
Slack Workflow Builder Examples
Slack publishes a directory of example workflows you can learn from. Here are a couple of useful ones. Check them out to see screenshots of what building a Slack workflow is like:
- Daily reminder to post a standup in a channel
- Approve travel requests
- Automatically welcome new channel members
Limitations of Slack's Workflow Builder
Slack's Workflow Builder is a powerful way to automate your conversations. But when we want to use it for more complex workflows, the kind that gets our most important work done, there are a few gaps to be aware of.
- Hard to do multi-step workflows. It's pretty good for doing two-step flows, like having someone fill out a form and then post a message. But you have to string together multiple "workflows" to handle something like an approval (you need a second one to see if the approver clicked on an emoji, which then needs to notify you that they approved).
- Little paper trail. For something like approval, the only record that someone approved a request is that they reacted to the request with an emoji. That's really hard to find later when you need to audit who approved something.
- Can't assign tasks to close the loop. Lots of processes involve assigning tasks to someone to complete the workflow. After you approve a new job offer, someone needs to be automatically reminded of a task to send it. There's no way to see that they actually checked off that they did the task.
- No dashboard of work waiting on you. If every request is a notification in a channel or DM, you have to be careful not to miss one. There's no central place to see all the processes waiting on your input, so you'll have to check lots of channels to see if anyone is waiting on you (or to see progress on your own requests).
- Can only have one button in your message. Workflow builder has a cool feature to include a button underneath your message (i.e. a "Task completed" button). But, many real-world processes need a whole checklist of tasks or approve/deny buttons.
Take Slack workflows to the next level with Wrangle
Wrangle is a Slack app that helps you assign approvals and tasks inside your channels. Wrangle integrates with Slack's Workflow Builder so that you can automatically route work in response to people filling out forms.
Here's how you might automate a blog post publishing process in Slack using Wrangle and Slack Workflow Builder:
1. The Slack Workflow is kicked off
In the private #marketing-team channel, a marketing team member clicks the shortcuts menu (⚡️ button) and picks "Publish blog post" to start the workflow.
Immediately, a modal window opens with a form designed by the VP of Marketing. The form collects information about the blog post: the name of the post, a link to a draft, the target publishing date, and who the post is targeting.
2. An Approval is assigned to the VP of Marketing
As soon as the form is completed, the Workflow triggers Wrangle to post an Approval to the #marketing-team channel. The trigger posts the approval as a new thread in the channel, so anyone can watch and comment on the approval. It also notifies the VP of Marketing in the message with a @-tag.
In the posted approval message, the VP of Marketing can see the responses to the form. She also has "Approve" and "Deny" buttons to click once she reviews the blog post.
3. Tasks are assigned to the designer to create images
Once the VP of Marketing has approved, the Workflow triggers Wrangle to post a task checklist to reply to the approval message. This task list tags the designer and assigns him to create images for the header banner and illustrations for the blog post's body.
Everyone, including the person who wrote the blog post, can follow along as he checks off the tasks. Since the tasks are posted in the same thread as the original approval, the full history and discussion are kept together.
Once he clicks to check off all the tasks, the next step is triggered.
4. Tasks are assigned to the blog administrator to publish
Finally, another Task List is posted as a reply in the same thread. This list assigns tasks to the blog administrator to upload the images, publish the post, and post links to it via social media channels. That way, we make sure someone is assigned to close the loop on this effort.
After the blog administrator checks off the tasks, Wrangle notifies the person who wrote the post and started the workflow.
Wrangle keeps track of the tasks and approvals for history. This way, you can find out what changes were made and who approved them.
Learn more and try Wrangle
You can learn more about Wrangle's ticketing tool for Slack and try it out.
- Unlimited free Plan
- Personalized onboarding
- Access to all features
Easy way to manage team’s productivity
Drive performance and your cross-functional collaboration with easy-to use Wrangle tools