Slack UX and Chatbot Development Best Practices

I had a chance to visit Slack's NYC headquarters last week, for an event about building better chatbots for users.  Whether it be Slack, Snapchat or Facebook Messenger, chat (as a medium) has largely surpassed social media in terms of engagement and time spent on platform.  Therefore as the chatbot space becomes more crowded, setting standards for chatbot development best practices (especially standards for user experience) is crucial for individual chatbots to succeed. 

I've long been a Slack chatbot fan (and was recently highlighted as a Statsbot super-user on their website). 


Bear Douglas, the Developer Advocacy Lead at Slack (formerly of Facebook and Twitter), led the talk, and had some interesting insight into successful chatbot development.  Firstly, when building a bot for the Slack App Directory, follow the basic guidelines like outlining your use cases, understanding your audience and creating guidelines for messaging.  Secondly, focus on the clarity of intent, and make sure you create an easy onboarding experience. Ensure your bot's diction is clear, using action words and inclusionary language. 

I had a chance to chat with Bear Douglas after the event, and mentioned I was impressed at how much the app directory had grown in the several years since I've adopted the platform.  I told her I had heard that Slack was kind of fulfilling the potential of what Twitter once had claimed; becoming a platform (for people to develop upon) rather than just a messaging app.  She quipped back, that "yeah, that's true, we do say that a lot... though that might be because most of people here-- we came directly from Twitter. 

The office was very cool as well. 


The 10 Best Slack Chatbots for Marketing in 2017

I've been ruminating a lot about bots recently, and whether all of these new machine learning products are actually artificial intelligence, or if AI is little more than pattern recognition, as complex as it can be.  And while we're marketed plenty of products that clearly aren't actually intelligent (which of course begs the question what exactly we mean by "intelligence"), the one field that has a vested interest in mimicking human emotional response is the world of chatbots. 

I use chatbots every day for my job in marketing, and I wanted to share a list of some of the most valuable chatbots I've found, why they're useful, and how much they cost. During a fascinating Slack meetup last week, I was interested to learn that people are now spending more time on messaging services than on social media, which is a profound change in how we used the internet.  Even more intriguing is that a growing number of conversations that take place through Hipchat, Facebook Messenger, AIM and slack are now conducted with automated messaging robots called chatbots, which are built to make developers', salespeoples' and marketers' jobs easier by executing specific commands directly from within one messaging service, rather than navigating across multiple platforms. 

Here are some of the best chatbots I have found for marketing that will make my job easier in 2017.  

1. Statsbot

Statsbot is one of my first and favorite chatbots, allowing me to query both Google Analytics and Salesforce, as well as to set up recurring reports and alerts at a specified time of day, week or month, and finally to set certain alerts if benchmark metrics are not achieved, or thresholds crossed.  Statsbot understands fairly complex complex commands, and has become a vital tool for reporting and business insight. 

Cost: The free version is quite powerful, though the paid version is affordable and well worth the cost, with tiers at $5, 15 and $25 per month a pop. 

2. Workbot (via Workato)

Workbot is sort of an IFTTT for Slack, connecting over 150 platforms to the messaging service, from GitHub to Quickbooks to Docusign.  You can run simple commands in each app, as well as set up complex recipes from using everything from notifications to resolve issues assigned to you about your codebase, when invoices are created, or a contract is signed.

Cost: Workbot is cool, but the free version is close to useless, and the next tiers are $99 and then $499 per month, limiting its use to enterprise power users.  I can't justify the costs personally, though the tool is quite powerful. 

3. Senders 

Senders is actually an email plugin with a chatbot that offers the same functionality to query information about someone using their email.  Senders creates a professional Rapportive-like card for anyone who emails you, including links to their website, social media profiles, as well as any recent blog entries or social posts that person or person's company might have made.  Though they push users to volunteer information to complete on online profile, it's a great way to get a little information about the sender of any email and where they work.  

Cost: Absolutely Free! 

4.Trello

Trello is a great (and mostly free) project management software, that I've used across several companies for years. Trello uses a simple Kanban board of cards and categories, allowing you to assign tasks and project to different team members, track the progress, and attach documents and collateral all to cards that move across a board.  The Trello slack bot allows you to update information and progress on each card, reassign users or even move cards around according to the status of the project. 

Cost: Free; Trello has some paid features. 

5. Reveal

Revealbot is a really compelling bot that allows you to not only manage and report on Facebook advertising spend, but also supposedly optimize and automate some of the work that goes into running an effective social media campaign. Similar to bid optimization scripts in Adwords, Reveal claims to allow users to not only report and manage Facebook Ad Spend, but run slash commands and schedule rules to optimize campaigns, for example to cut a budget if the Cost Per Acquisition crosses a higher than desired threshold.

Cost: There are a number of different platforms starting at $10/mo

6. Taskbot

Taskbot is a very simple text input-based project management bot, where you can keep simple "To Do" lists. I mostly use the native @slackbot's slash commands of /remind me {date} project, but taskbot offers a few additional features like keeping a running list of tasks in a given channel as well as assigning responsibility to more than one team member.

Cost: Free

7. Growthbot

Growthbot was built by the founder and CTO of Hubspot.  Though I believe you need to actually need to be a Hubspot customer to access any of the real marketing and sales tool, Growthbot looks like it can integrated with Google Analytics, and do anything from disseminate content to a blog, to pulling up client records from your Hubspot CRM, without leaving the comfort of your very own Slack community. 

Cost: The bot is free; Hubspot is not. 

8. Arc

Arcbot is really used for the purposes of making quick Google Analytics queries on the fly, as well as scheduling simple GA reports.  You can set up daily reports for anything from sessions to bounce rate, and how that metric or dimension might have changed from a previous time period.  I used Arcbot quite a bit until I found most of it's functionality replaced by Statsbot. 

Cost: Basic Plan is free, while a paid plan offering conversion reporting and behavior costs around $9 / month. 

9. Domainr

Domain Research is an is an ICANN-accredited registrar, allowing potential entrepreneurs to request the availability of domain names. They do collect data on searches, though assure users that information is confidential, making money with partnerships between registrars and other vendors they refer. 

Cost: Free

10: Screenhero

Slack has a very nifty native (and very underutilized imo) /call slash command, which when I started using Slack a couple years ago, was the final nail in the coffin of Skype, allowing you to initiate a free voice call to any team member.  However, until very recently there was no native video chat to the messaging service, and though you could easily initiate a Google /hangout, the command launched a third party browser-based video call.  Slack recently purchased Screenhero, to integrate Join.me and TeamViewer functionality (i.e. not just video calling, but screensharing, presentation and remote desktop.

Cost: Unclear as of yet. 

BONUS: Troops

Troops is a chatbot that I just installed a week ago, and I'm quite impressed to far... Fundamentally, troops allows you to pull basic (up to 5 fields) from any Salesforce reports, and schedule a Slackbot to regularly run that report at a given interval.  You can get daily reports of leads created, to monthly opportunities closed by owner.  You can also search your Salesforce Org from directly within Slack, and one of the neatest features is called a "Gong," alerting users to any opportunities won, as soon as they happen. 

Cost: free... for now I think. 

If you have an awesome Slackbot that is useful for marketing, please let me know and I'd love to check it out! 

Statsbot Salesforce Commands for Slack

Slack Commands for Salesforce and Google Analytics Automation

I've been a huge fan of Slack for a while now, the team-collaboration tool that is becoming more of an automated work management system than simply an instant message platform.  I use Slack to keep in touch with multiple teams; the marketing team at work, as well as my motorcycle club, including many individuals operating across multiple offices and timezones.  However, the true utility of Slack extends far beyond personal communication, as apps like IFTTT, Zapier and Statsbot actually integrate external software and even devices from Slack Channels and Bots, allowing you to control, report and even automate your personal and professional life directly from Slack. 

Slack commands are incredibly useful, and have replaced many of the myriad calendar, to do list or even project management platforms I've perfunctorily used in the past.  Using the /remind command in Slack allows a bot to schedule a personal reminder at a specific time, on a particular day or in a few hours from now.  Setting reminders for other team members, or even an entire channel is even more useful.  Simply type (in any channel)   "/remind [someone or #channel] [what] [when]" and @slackbot will not only remind you of [what] at that particular time, but keep a log of tasks due and completed in your Direct Message history. There are numerous other incredibly useful "slash" commands to /invite users, take a /poll, or even set up a /call with the #channel, nearly completely supplanting the utility of Skype. 

Slack also integrates with multiple other platforms and devices, allowing you to query and control other platforms directly from Slack.  I can access my Google Drive, or create a Google Hangout directly from within Slack, or integrate with other project management tools like Jira, Asana or Trello. Using IFTTT, I've set up social media posts or mentions to post to a #social channel so I can monitor activity across different sites.  I've set up a Craigslist scrape to post any new motorcycle listed for sale in New York State mentioning the word "Ducati" in the title to a Slack channel in real time. I've configured my Amazon Echo to automatically post reminder to Slack, anytime I add an item to my Alexa To Do list. 

These personal and professional automations save time, but the most impressive app I've seen yet is called Statsbot, which allows you to run Google Analytics and Salesforce reporting directly from within Slack.  As much as I absolutely love running reports in Salesforce  (then exporting and waiting to download a CSV, then finally manipulating the data) @statsbot has native querying language and native graphing tools built into the app.  

For the past month, I've set up automatic weekly and monthly traffic and conversion reporting, so I get a direct message in a private channel as soon as I get a cup of coffee on Monday morning, or right before a marketing meeting. 

Similarly, I've set up alerts for traffic or goal thresholds, that automatically notify me if visits and conversions don't reach or surpass specific targets, so I can make adjustments to the website or any campaign in real-time.  I have similar email alerts set up through GA, or Uptime Robot, but I'm much more likely to notice a Slack notification over a form email. 

Finally, last week Statsbot announced an integration with the Salesforce API, integrated with Slack, that functions similar to the Statsbot Google Analytics integration.  

I can query individual leads or accounts with the info command.  I can query amount won or this week's leads by source, and make marketing adjustments on the fly, rather than wait for an ROI report from a marketing or finance analyst. 
I can query a list of all open opportunities by stage, or even opportunities scheduled to close this month, which is far easier than getting a quote from my favorite Salesforce consultant to build a dashboard.  And, I can get realtime stats on my sales team, how much they're closing, from where and how well they're managing Salesforce. 

Best of all, I can schedule these reports to run hourly, daily or weekly, and report back to me at a specific time, when I think I might need it. 

Slack is quickly becoming the most used software tool in my professional life, as it's giving me realtime insight into various different platforms, social channels, applications and data, that I would need to query individually to use. And Statsbot is quickly becoming one of the most powerful app integrations with Slack as commands and scheduling allow me to automate much of the redundant marketing reporting that previously sucked up much of my team and my time in the past.