The Workflow Library
HomeBundles › How do I send Slack notifications from HubSpot workflows?

How do I send Slack notifications from HubSpot workflows?

Short answer

Connect the Slack integration, then add the Send Slack notification action to a workflow and pick a channel from the dropdown. That channel is fixed at build time: there is no token that routes a record to its own channel. For per-region or per-team routing, build one branch per channel. Twenty minutes for the first alert. The trap is the owner token, which renders a numeric ID instead of a name.

7 specsNeeds Sales Hub Professional or higherAbout 90 min for the core build1 free to read

The 7 specs, in build order

Each spec states its minimum tier. Free ones open in full; the others show their public preview and the date their full spec lands.

The single-record alertOne record crosses a line, one message lands in the channel, with a guard property so it fires once.
Slack alert: deal marked Closed Won (revenue milestone notification)
The sales team sees a Slack message the moment a deal is marked Closed Won, so wins are visible in real time without opening the CRM.
Sales Hub Prodealfree, complete
Slack alert: high-value deal created (amount above threshold, awareness only)
Leadership and sales management see a Slack message the moment a deal above a set amount threshold is created, so large opportunities get...
Sales Hub Prodealfull spec 09-25
Slack alert: contact reaches a key lifecycle stage milestone (e.g. became Customer)
The team sees a Slack message the moment a contact reaches a chosen lifecycle stage milestone, most commonly becoming a Customer, so conversion...
Marketing Hub Procontactfull spec 12-18
Routing the alert to a humanBranch on whether the record has an owner, notify that owner directly, and catch the unassigned case.
High-value form submission instant Slack and email alert to rep
The moment a lead who meets a high-value threshold submits a form, the assigned rep and the Slack sales channel both get an immediate alert, so...
Marketing Hub Procontact
Notify AE by internal email when a meeting is booked on their calendar
The AE gets an immediate internal email the moment a prospect books time on their meeting link, with the prospect's context, so they are not...
Sales Hub Procontact
Alerts that need a comparison firstA snapshot property and a calculated percentage, so the alert only fires on a swing that matters.
Slack alert: deal amount changed above a percentage threshold (visibility, not approval)
When a deal's amount moves by more than a set percentage in either direction, the sales channel gets a Slack message flagging the change, so a...
Sales Hub Prodealfull spec 11-27
One message instead of fiftyA scheduled coded action that queries the week, sums it and posts a single digest to the channel.
Weekly Slack roundup: deals closed won this week (team wins digest)
Once a week, the sales channel gets one Slack message listing every deal closed won that week with the total revenue, instead of scrolling through...
Operations Hub Prodeal

What a spec looks like

Every spec follows the same nine sections, so a team reads one and knows how to read all of them.

  • Outcome, when to use it and when not to
  • Prerequisites: properties, lists, tiers, with the JSON to create them
  • Enrollment and re-enrollment, then every step with its parameters
  • Known pitfalls, a test plan, variants, and the YAML build spec
First page of a spec

What breaks, and how the specs prevent it

One channel, chosen by hand, forever

The Send Slack notification action takes a channel from a dropdown at build time. There is no property token for a channel, so a deal cannot post to its own region channel. The documented workaround is one If/then branch per channel, each holding its own copy of the action, which is fine for three channels and unmanageable for thirty. Past that, a coded action posting to an Incoming Webhook URL is the only real route, and it needs Data Hub Professional.

The owner shows up as a number

The owner token renders the raw internal owner ID in a Slack message, so the alert reads as a meaningless number next to the deal name. Add the owner through the Properties to include with message picker instead of an inline token, then send one test notification to a real channel and look at it before go-live. Long merge values also break the message formatting.

The connection belongs to one admin

The Slack integration is authorized by a person. If that person leaves or loses Slack access, the action starts failing with no visible error until someone opens the workflow History tab. Private channels are invisible in the dropdown until the HubSpot app is added to the channel, and a bulk property edit fires the trigger per record, which dumps a burst of messages into the channel.

What this bundle builds

Seven specs for the question every sales team asks in week one: can we get a ping in Slack when something good happens. The answer is yes, and the shape of it is simpler than people expect. Connect the integration, add the action, pick the channel, write the message. Twenty minutes.

What takes longer is making the alerts worth reading. So this collection covers the four alerts that survive contact with a real channel. The closed won ping, which is the one everybody builds first. The high-value deal created ping, so a big opportunity is visible from day one rather than at forecast review. The hot lead alert that goes to the owner directly and falls back to the team channel when nobody owns the record yet. And the amount-swing alert, which needs a snapshot property before it can tell a 5 percent tweak from a 40 percent discount.

Then the weekly digest, for teams who decided real-time pings had become wallpaper. That one needs code and Data Hub. Everything else runs on Professional.

How the pieces fit together

Build the closed won alert first, on a test deal, and look at the message in the channel before anything else. That one send tells you whether the owner token resolves to a name or to a number, which is the fix that applies to every other spec here.

Add the creation-time and lifecycle alerts next. They share the same guard-property habit: a checkbox set after the send, checked before it, so a record crossing the same line twice does not fire twice.

The routing specs come third because they need an owner to exist. Run them after your assignment workflow, or the branch falls to the unassigned path every time.

Leave the amount-swing alert until the snapshot property is initialized on existing deals, since the first comparison against a blank baseline is meaningless. The digest goes last, once you know which alerts people actually read.

What you get

  • 7 specs, each with outcome, prerequisites, enrollment, steps, known pitfalls, a test plan and variants
  • Each spec ships as PDF and Markdown
  • Properties JSON, 6 properties, 3 on deals and 3 on contacts, mostly the guard flags and the amount snapshot
  • Workflow JSON for all 7, in Automation API format, switched off on import
  • One custom coded action, the weekly digest, with its Slack webhook handled as a workflow secret
  • A test plan per spec, including the live channel check on the owner name
  • Install in one click for Full and Agency buyers

Who it is for, and who should skip it

Good fit for a sales or revenue operations owner setting up a new portal, and for anyone whose Slack channel is currently fed by someone copying deal names by hand. Six of the seven build on Professional with no code, and the first one is live inside half an hour.

Skip it if your team does not use Slack. The internal email notification action does the same job and every spec names the swap in its variants, but you are buying Slack-specific wording you will not use. Skip it too if what you need is a message that picks its own channel per record. That is not what the native action does, and the specs for the workaround are not written yet.

Questions admins ask

Can HubSpot send a Slack message to a different channel per deal or per record?

Not natively. The channel is picked in the action configuration and stays fixed. Branch on the property that decides the routing, region, product line, team, and put a separate Slack action with its own channel inside each branch. Two specs on dynamic channel selection and on notifying a shared inbox are on the list to write and are not part of these seven.

Why does my Slack message show a number instead of the rep name?

The owner property holds an internal ID and the inline token renders it as-is in some message contexts. Use the Properties to include with message option on the action so HubSpot resolves the owner to a display name. Test it once on a real record. Four of the seven specs carry this as a named pitfall because it is the first thing people hit.

Can I get one Slack message summarizing the week instead of one per deal?

Yes, but not with native actions alone. A standard workflow acts per record, so ten wins produce ten messages. The weekly digest spec uses a scheduled workflow with a coded action that queries the deals search endpoint for the last 7 days, sums the amounts and posts one formatted message. It needs Data Hub Professional. The no-code alternative is a dashboard report on a recurring email schedule, delivered as email rather than Slack.

Can I notify a shared inbox or a distribution list?

Internal email notifications only reach HubSpot users. An external alias does not receive them unless that alias is itself set up as a user. The practical route is Slack, or an email address the channel itself exposes for inbound mail. When the record has no owner at all, branch to the team channel and add the record to a manual routing list rather than sending to nobody.

Does the Slack action work on Starter?

No. Starter portals run simple workflows, which support neither the Slack action nor branching, so five of these seven specs cannot be built there. Confirm the tier before promising a build. The digest spec goes further and needs Data Hub Professional for both the coded action and the weekly schedule trigger.

Related

Built by a collective of independent HubSpot consultants, ten years of implementations behind them. Searched as: hubspot slack alert deal closed won, hubspot slack notification workflow, slack notification high value deal, notify rep when form submitted. HubSpot calls it: Send Slack notification, Send internal email notification, Properties to include with message. Version 2026-09-18.
149 EUR all 500
Get the library