Weekly new team registrations

Our First week on the Slack Platform

The good, the bad, the ugly

Matty Mariansky
6 min readDec 21, 2015

--

A week ago, on Dec. 16th, Slack had some really exciting news: They are officially launching the Slack Platform. Their App directory is going live, and it would be easier to build, find, and deploy interesting integrations for active Slack teams.

Here at Meekan, we develop a robot assistant that helps running your schedule: He can arrange meetings, re-schedule, warn you about double bookings (and even find you flights).

Our robot went live on mid-June, when we featured it on Product Hunt, in a very successful campaign. It brought us hundreds of new teams in next couple of days! We were hard at work to retain those teams, keep the servers running, and constantly teaching the robot new capabilities.

So our retention numbers were awesome, user engagement was great, Twitter response was heart warming. What was wrong?

The Ugly: Discoverability

Let’s start at the end: Ugly is gone. It was really difficult to install the robot, and it was nearly impossible to find out about him. Slack made these two problems go away.

Without a proper central repository for integrations, an App Store, our new users were mostly bot enthusiasts, who made lists and recommended bots for each other. We got great feedback and insights from those people.
Some blog mentions, and a bit of SEO brought us those interested in managing their calendars through Slack. These guys were a bit less technical than the first group. And the public discussions about our robot in Twitter brought those who were excited to see AI in actions, and were trying to figure out if our robot was already self-aware and about to take over.

This way we managed to keep a small, steady flow of incoming new teams, without overwhelming ourselves and our servers. This was a good start, but without any marketing budget, we were now hungry for more.

The second problem we were facing was installation. The users who stumbled upon our web page had to follow a long, complicated list of instructions to install Meekan: Go to Slack’s bot integration page, generate a token, come back, paste it, name the robot, upload a profile pic for him.

People were giving him weird names. We suggested “meekan”, but people would use other assistant names (Alfred, Friday, Moneypenny), famous robots (Jarvis was very popular, but also HAL, T1000 and even Maximilian), or just plain offensive stuff (“slave”, and even worse, names of competing products).

Maximilian? Really?

With users sending us fun conversations with our robot, we had no way to really brand and package the whole thing, with one single profile pic and name everywhere people met him.

The name is right, but with the default Slack bot avatar!

The Good: Slack’s App Directory and one-click installs

We were lucky to get a heads-up from the Slack team a few days before the official platform launch. We were asked to use the new APIs to onboard new teams. The improvement to the process are significant.
Before, the only way to know who installed us, was to ask for his name (so that we can message him post-install). Now we received the API token and the user’s ID through an OAuth process. It minimized the room for error we had before, with about 10 different error messages we showed (Invalid token, two bots on the same team, unknown user added us, etc).
The whole thing is now reduced to just one nice button. In fact you can install Meekan from right here:

If you click it, they will install

The added benefit is that the customization is centrally controlled — We choose the default robot name, as well as his profile picture. It gave us the branding we needed.
Actually, last Thursday we changed the robot’s profile to celebrate the Star Wars movie premiere (and even taught the robot to recite from the scriptures)

The force is strong with this one

Our discoverability has sky rocketed with the new directory. Slack chose to highlight their “Brilliant Bots” category on its main page, and we even climbed a few spots in the rank during the week. The announcement days brought in more users than we could expect, making it our 2nd best week ever, matched only by our Product Hunt launch week.

The Bad: engaging

So we received our discoverability, easy installation, and branding. What could go wrong?

It became harder to engage the team we were added in.

In the old way of adding the robot, he automatically joined the #general and #random channels (or whatever default channels the team had). That was a great starting point — imagine that whenever your app gets installed, it can publicly talk with everyone in the company.

Initially we had some user backlash when the robot joined the main channel and started blabbing (we actually asked Slack to stop forcing bots to auto-join #general!). So, we had to tone it down, only make a short announcement — “I’m here, I’m helpful, you can kick me out of this channel now”. It wasn’t much, but it was immediately the center of a conversation. People started talking to him, see what he can and cannot do, and added him to more channels. We learned well how to harness the power in #general, by showing accountability for his existence and why he’s important to the team.

Now, in the new bot creation flow, Slack doesn’t add our robot to #general or other default channels at all. He also can’t create channels, or add himself to any. He isn’t a member of any channel until he’s manually added to one by users. But how do users know he’s there and they should add him, if he doesn’t reach out?

Technically, the robot could reach out to everyone, personally, in a DM. He would introduce himself, and try to convince the user to sign up and start using him. But reaching out to the entire team in a DM is a horrible idea, and a great way to receive negative feedback, and getting our robot banned forever.

So, right after installation, we reach out only to our champion (that’s what we call the user that installed us into the team). And we focus by asking him or her only one thing: “/invite meekan” to some channel you use. Once the robot is in a channel, it’s easier to get the ball rolling, because a chain effect starts: Some members of the channel sign up, start using him, invite other people to the meetings he arranges, and soon after they add the robot to more and more channels. But to get this “channel-cred”, we need the champion to be there and vouch for him when he starts working his magic.

Our onboarding flow became a bit slower with the new framework. The time until the first team member (Our champion) signs up is faster, but he’s now more reluctant to add Meekan to the first channel — It’s easier to go from 1 to N than from 0 to 1.
Also, our “old” users had to put in a lot of work to find and install the robot, so there was more chance they will actually start putting him to work right away, rather than install and forget about it.

That’s our focus right now — Improving our value proposition, and making the team feel comfortable to start using this awesome robot assistant.

The Slack Directory has finally given us access and visibility to more teams, who try and love Meekan. Only one week passed, but the wild wild west of bots now feels more tamed, and we need to adapt to better fit what teams expect from a mature, tested product in Slack’s directory.


This is a part of Meekan’s journey to create the digital office manager. Read more stories here
Written with Eyal Yavor, Meekan’s CTO and co-founder

--

--