Social Monitoring With Slack

Since February 2018 when this post was originally written, it's accounted for a full 34% of the traffic to my website. First of all, welcome! I've heard from well over 100 people who have successfully implemented the recipe below, and I'm excited that it's been successful for so many of you! 

I do consulting on setting up your marketing tech stack, or am happy to provide short-term consulting support on this recipe if you want some one-on-one help. Just head over to contact me and drop me a note. 

Updated February 2020 to reflect changes in several APIs. These changes are reflected with a > at the beginning of the line.

My day-to-day job, career, and constant passion is creating truly great experiences and spaces for people. For the last several years, I've done this through managing social media at STCU, a credit union based in Eastern Washington and Northern Idaho.

I've also managed social media for a variety of organizations, groups, and personally for well over a decade. I consider a strong social monitoring system or process to be one of the most important things for both great service -- and the sanity of your social media manager.

Why I decided to home-brew

There are a number of truly excellent social media monitoring tools of various types out there. There's the "big guys" - Sprout, Hootsuite, Falcon, Nuvi. There's also online review and location management systems such as SweetIQ, ReviewPush, Yext, and more.

There are two big challenges with these programs, however. One is the obvious one: cost. Not-for-profit institutions and small or medium businesses may or may not have the resources to invest in the tools that would cover everything needed.

The other is a bit more of a self-created issue: I have yet to find a social media management or monitoring tool that handles 60% or more of the social networks that I would like to monitor.

Blame Jay Baer's Hug Your Haters... or my own Millennial sensibilities. Or perhaps years of trying to tweet at organizations that don't respond. I may not be actively managing and engaging on a particular network, but that doesn't mean that I don't want to see the comments and questions that are out there to help out if I can.

The end result of this, though, is that actually keeping an eye on everything could quickly become a Sisyphean task. About a year ago, I decided to try something other than relying on only notifications and searching. I thoroughly researched well over a dozen social media management tools. None that I could find:

  1. Fit within our budget

  2. Provided the functionality or extensiblity to monitor or at least record input -- automatically or manually -- from networks that the tool didn't support out-of-the-box.

  3. Was easily understood by team members who didn't spend all day, every day in the social media world

Thanks to just enough knowledge of APIs to be dangerous, I had threatened more than once to try and build my own system when discussing my frustration with my family. Eventually, threats turned to pondering turned to taking a few days to see if I could make it work.

Your TL;DR summary

Use Slack as your home base and Zapier to tie in anything that there isn't a standalone Slack App for. Even if Zapier doesn't have an app, email notifications make it work.

We spend less than $100 per month, and it can be done for free, with some limitations.

The Recipe: Building a Social Tool With Slack

I'd only kind of heard about Slack before this, but had heard wonderful things about it from the Offbeat Empire. One of the few things I had heard was it was extraordinarily extensible. A few days of heavy Googling, a few more days dedicated to building this crazy system, and an occasional true-up or bug-smashing day combined make for a system that not only works, but helps keep me (and our Accounting department) sane.

Ingredients

The basis: Slack
Cost: Free, or $6.67 per user per month
If you haven't used Slack yet, then you're in for a treat. You can use the free system, or pay for an upgrade. To meet the record retention requirements and to make things a bit easier, we went with the paid version, but this could likely work without it, depending on what you want to do.

Plugin: MailClark
> Cost: $5 per user, per month
MailClark ties a number of systems in to Slack, including Facebook and Twitter private messages, email groups, Google groups, and email. The Facebook and Twitter private messages was especially attractive, since this was one of the few programs I could find that did this well.

> After two years of using MailClark, it is still my preferred tool for this. They continue to make updates, and there are a few things I'm hoping to see in the way of improvements. I'm also investigating if Integromat is an option for at least Facebook Pages messages. 

Plugin: Reactji Channeler
Cost: Free
This is built by Slack, and posts messages to a second (or third, or fourth) channel on the basis of a reaction emoji added to a message.

Plugin: Zapier
Cost: Free or $20 per month
Again, you can do this with the free version of Zapier. The paid version gets the zaps working more quickly and gives you access to three-step systems. Zapier is essentially a GUI (graphical user interface) for API programming interfaces. This is really the "secret sauce" that makes everything else work in this system.

Plugin: RSS
Cost: Free
If anything has an RSS feed, this gets it in to Slack for you.

Structuring Slack

One #incoming channel where everything - and I do mean everything - comes in. From there, reactji are use to copy messages in to a number of different channels that have various purposes. These include #complaints #kudos #inforequests #fraud  and the like.

There are two drivers for this:

  1. The kudos, complaints, and info requests correlate with the qualitative data I share in our weekly social media report.

  2. The channels such as #fraud correlate to other team members who do something with those posts -- either follow up with members or do further research. As our team grows, I expect to make even heavier use of these channels to coordinate who is responding to a particular question or member.

I also heavily make use of the "star" function to create to-do lists, and /remind and other commands to keep myself organized.

The threading function also makes leaving status notes for other team members especially easy.

Going network-by-network

So, here's how the system works out, broken down by what the heck I'm trying to integrate.

Facebook Page Notifications
Facebook is, to put it mildly, the problem child of this whole setup. Even Facebook's native apps are rather terrible at reliably sending notifications about every review, every comment, every tag, every interaction. So - I kind of go overboard here. This does result in a few duplicate notifications, but I'd rather see two of something than nothing at all.

> Zapier offers several types of Facebook notification tie-ins, and setting up each of these will help get most notifications into the system. This includes recommendations (Facebook's new reviews system), posts to page, and comments.

> You'll also want to set Facebook to email all notifications to you. If you are willing to do a little bit more manual work, have those notifications automatically forwarded to Zapier's parser, and then cut out a lot of the duplicate information. Otherwise, have those emails automatically forwarded to Slack's email parser. 

> This will also take some significant management on Facebook itself. For posts that get a lot of comments we won't need to check, you can make the decision (though it needs to be a measured risk) to turn off notifications on particular posts to keep from flooding your notifications. You can also turn on notifications for any post you want to keep an eye on, be it yours or someone else's. 

Facebook Private Messenger
MailClark handles this beautifully -- private messages notify me in Slack, and I can respond, categorize with Reacji Channler, and add notes as necessary.

> Note that you'll need to make use of Mailclark's function to assign conversations and mark them as complete / done. Otherwise Slack may not notify you of new messages that are a part of an ongoing conversation.

Twitter
I've got a number of Twitter search functions set up through Zapier, all that post a message to the #incoming channel. These include:

  • Search mentions of our name (which has the impact of also posting all the tweets we send - a good double-check of our scheduling system). I've also added a second step in Zapier of filtering for English language tweets.

  • Search+Geo mentions : When someone with locations turned on tweets something about "credit union" or "bank" within a certain radius of our branch, I get a notification

  • Tweet in list: I have a Twitter list set up of accounts we follow and want to keep a close eye on for various reasons.

Twitter DMs
Again, MailClark handles these beautifully and simply.

Instagram

> Zapier used to offer an integration for Instagram searches, but this API was taken offline. While Facebook has integrated Instagram messages and comments to the pages message center, it doesn't appear that the API is fully integrated. For now, this is the weak point of the system.   

Google My Business
Google is great at emailing you when you get a new review. There are two options here -- have those emails automatically forwarded (using your email program) to Slack's paid service that gives you an email. Or use Zapier to search your Gmail for the Google reviews and send it to your Slack. You can also use Zapier's parser to clean up these messages. 

YouTube
Two integrations make this work. One is having YouTube email any comments or notifications, and then having Zapier search for and forward those to Slack. The other is Zapier's tool that searches YouTube for any mentions of our brand, which pulls up videos where the text description or title contain our name.

Yelp
There are a few Slack tools that will search Yelp, but for now, we have Yelp email all reviews to us, and then those emails are forwarded to either Slack or Zapier-to-Slack creating a notification.

Reddit
This is another double-tool system. Reddit's own search isn't great, but Zapier's API search for new posts or comments mentioning a search string is great, and sends a Slack notification. I also have Reddit set to send a message for every reply to one of our posts, and emailing us for all messages. That email then forwards to Slack via email or Zapier.

Google Alerts
This is pretty much a generic catch-all for mentions of your organization or group -- I have this set up for a number of keywords. When you're setting it up, just choose "RSS feed" as the delivery option and have that come in to Slack. This has notified me of reviews on Ripoff Report, DepositAccounts, and the Better Business Bureau.

Google Questions
Google's "ask a question" on My Business listings sends emails to gmail. Use Zapier's parser to manage these. 

Glassdoor & Indeed
Both of these services will email you when there is a new review. Have those emails come in to Slack, or Zapier and then Slack.

Tumblr
We aren't active on Tumblr, so I've got this set up to just look for posts tagged with our name through Zapier. There's no search option yet.

Things that don't yet integrate

LinkedIn
To my knowledge, LinkedIn doesn't send company notifications to any API or even email notification. These I manually paste the URL in to Slack.

Pinterest
Currently, Pinterest doesn't offer an API hook for searches -- you can't use anything but Pinterest to search Pinterest reliably.

Google Allo / Business Chat
> If you do decide to turn on Google My Business Live Chat, messages will be sent to you via text. There are several tools, such as Twilio, that will allow you to integrate these with Slack via either built-in APIs or Zapier. 

Planned Updates

Right now, our app reviews are also handled by another department, but I am working on getting those tied in, for visibility if nothing else.

I'm also starting to play with the fact that Slack ties in to a number of project management tools. I'm currently experimenting in creating and managing to-do items for social media in our departmental project management tools.

Finally, I want to get statistics -- from bit.ly, Google Analytics, and our social media into our Slack, but I haven't yet decided on which app to make that happen.

Would it work for posting, too?

Theoretically, yes. Most of the networks that tie in for notifications do either have a Slack or Zapier action of posting. And there's also social media scheduling tools like Yala that will schedule for you. I haven't personally built this, but I've thought about it, and will likely play with it for my podcast before taking it to my professional work.

> I've since built a system that manages social media scheduling, planning, and posting via Airtable and Zapier. I'm working on documenting that. 

Is it perfect?

Heck no! It's got lots of quirks and little things that take some getting used to. BUT - it's a system that works on desktop and mobile, is easily understood, meets all of the records retention requirements, and keeps nearly all of the notifications I want to see in one place, rather than in 20 different apps. It's not perfect for everyone, but it works great for me. Have questions or want to share how you're handling social management? Contact me!

Previous
Previous

Ad Expectations : How Vero likely won't fulfill their promise

Next
Next

The psychological alchemy of questions