You have arrived at the web home of Noah Brier. This is mostly an archive of over a decade of blogging and other writing. You can read more about me or get in touch. If you want more recent writing of mine, most of that is at my BrXnd marketing x AI newsletter and Why Is This Interesting?, a daily email for the intellectually omnivorous.

January, 2022

How Variance Uses Slack to Drive Growth

A deep dive into the way we use Variance to send signals to Slack all the while keeping things organized.

One of the requests we get a lot is more insight into how we’ve configured Variance. To that end, we’re starting a Variance on Variance blog series to give insight into how we have set things up. Today’s edition is going to be all about Slack.

Like many companies, Slack is our main artery. It’s the place the majority of our data and communication moves through. Whether it’s Huddles about product development, data about usage, comments in Figma, or, increasingly, conversations with customers via Slack Connect, it’s the place we work. In a lot of ways, I believe Slack is the browser for modern businesses.

At a base level, we have our Slack Guidelines, which we’ve published as part of our Culture docs. Most of those are more general approaches and ideas to how we use Slack successfully as a company. They include principles like this:

Public > Private: We are a remote-first company, even if you happen to be sitting next to someone, try to use Slack so everyone can see/participate.  This includes direct messages, which should be reserved for conversations that either a) need to be private or b) are wildly off-topic.

But specific to Variance on Variance, let’s talk about Prefixes. This is something Slack recommends, and I’ve found incredibly helpful. The basic idea is that you give each type of channel a unique prefix so they stay better organized (I’ll talk about groups a bit later, but they fit into the same idea). Here are our prefixes:

  • bot— For bots and automated messages
  • co— For all company-related channels
  • data— For all Variance lead and customer data channels
  • gtm— For all go-to-market (sales, marketing, services) internal channels
  • misc— For all topic-based and random channels
  • prod— For all product-related channels
  • proj— For collaboration on and discussion about a project
  • variance—We use this for our Slack Connect channels with prospects and customers
  • partner—We use this for our Slack Connect channels with partners
  • vendor—We use this for our Slack Connect channels with Vendors

One of the most common questions we get about using Variance with Slack is how to keep things from getting out of control, and this is an important first step. If you want more on prefixes, here’s Slack’s documentation page on how to use them effectively.

Let’s talk about data

Number three on that list is data-, which we use as the prefix for all the Variance Stream channels. If you’re not familiar, Streams are the way we allow customers to create a real-time view of any set of accounts, contacts, or events. Not surprisingly, we have a long list of Streams we use to monitor everything going on across the business and product.

We have 19 Team Streams we pump into Slack in one way or another:

Lots of Streams

What do they mean and how do we keep them from being overwhelming?

Let’s start with the channels themselves. I won’t go through each, but I’m going to highlight a few really important ones that I think are worth getting gonig for every company:

  • #co-general: This is where we send a few super important Milestone Complete events. This is our General channel with everyone in the company, so we don’t want to flood it. But we’re a startup and we want everyone to know when a new customer completes an Onboarding or PQL milestone.
  • Blog: We come from a strong belief in the power of content in sales, marketing, and success. Knowing when our customers are interacting with our blog content is a big datapoint for us.
  • Integrations: We rely on data getting in and out of Variance to provide value. This Stream looks at our key integration events so we can monitor customer usage in real-time.
  • Product Milestones: This is where we track all our product milestones (Signed Up, Onboarded, PQL, EQL) and send both Milestone Updated and Milestone Complete events in real-time.
  • User Management: This stream has all our user management events (invited, created, etc.). Since this is a key action for us, it’s good to see in heavy detail.
  • Variance Users/Variance Users (Digests): Variance Users is a noisy stream and definitely not for everyone. It looks at all our users as they take key events. I like to pop in there and see when people are interacting and be able to reach out with questions/help, etc. The Digests version of that rolls up that usage. For our Digests channel, we chose twice a day, but you could also have daily or hourly.

What do these look like when they reach Slack? Here’s a set of events from our Integrations channel:

Variance events in Slack

If you click the overflow menu (3 dots) you can see more detail about the Event, Account, or Contact. Here’s what Account details look like:

All your details available in Slack

Just to close this out, we use Tags to manage many of these Streams. Our integration Stream, for instance, is Filtered By an Integrations tag. Here’s what that looks like in Variance:

Using Tags within Streams

Keeping things organized in Slack

I already talked about how we use prefixes to help organize things. And while that’s a big step, I personally take things further by using Sections in Slack. If you’re not familiar with Sections, they’re just like little folders that you can create and then drag channels into them. Unfortunately, Sections don’t exist for everyone, so you’ll need to set this up for yourself. 

Just to give a sense, here’s my Slack sidebar:

Slack Sections

I basically just created a Section for each prefix. That way everything is nice and organized. Customers, Prospects, and Partners are all Slack Connect channels (more on that in a bit).

In addition, you can set rules for each section. For instance, my Bots section (which includes data from lots of other SaaS systems we use), is set to only show unread conversations. That means the channels don’t show in the list unless they have new messages.

Section-level settings

Slack Connect with Prospects and Customers

Finally, we are heavy users of Slack Connect. Every prospect and customer we work with we try to set up a Slack Connect channel. In addition to just answering questions and helping folks get set up, we actually send Variance data about key actions taken by the team back to their Slack Connect channel. We’ll be writing more extensively about that workflow in the near future and if this sounds good I would highly recommend joining us for our event about using Variance and Slack Connect to Close Deals Faster on February 2, 2022.

January 28, 2022
Noah Brier | Thanks for reading. | Don't fake the funk on a nasty dunk.