The Do's and Don'ts of Building Products on Top of Existing Ecosystems (w/ Ankith Harathi of Macro)
The Do's and Don'ts of Building Products on Top of Existing Ecosystems (w/ Ankith Harathi of Macro)
Have you ever tried to grow your product's user base through the system of another product? What about build your product from scratch on top of another product's ecosystem? Ankith Harathi did both with his two products, Marlo and Macro.
In this episode, Matt and Ankith discuss what that process looked like, growth clusters, optimizing for feedback, and the three core decisions Ankith and his co-founder, John Keck, made that turned Macro into a conversation topic at the start of all meetings.
Like this episode? Be sure to subscribe, leave a ⭐️⭐️⭐️⭐️⭐️⭐️ review, and share the pod with your friends! You can connect with Matt Bilotti, Lindsay Craig and Morgan Brown on Twitter at @MattBilotti, @_LindsayCraig, @morganb, and @DriftPodcasts
Matt Bilotti: Hello, and welcome to another episode of the Growth podcast. I'm your host, Matt Bilotti, and I am excited today to have on Ankith Harathi, who is the co- founder and CEO of Macro. Ankith, thanks so much for joining.
Ankith Harathi: Thank you for having me.
Matt Bilotti: Absolutely. So I've known Ankith for a while, and he's in iteration mode on a product, and a couple of products that he's worked on, which are all built around existing ecosystems. So one of the early versions of Macro was another tool called Marlo, which they were building on top of Slack. And they did all sorts of growth- related things to drive adoption through teams in Slack. So a single person would adopt it, and then they tried to get many others on the team to pick it up and start using it. And now Macro is a layer that sits on top of Zoom. I've been using it for a while, and I'm excited to dig in on the things that they do to drive other people to say," Huh? What's Macro? Can I start using that?" And the tactics that they've done there. So why don't we go ahead and start from the early iterations, and we'll work our way to what you have today. So you're building Marlo on top of Slack. What were some of the things that you did to try to grow that user base early on?
Ankith Harathi: Slack was just a very interesting choice, because what we actually tried to focus on. So John, my co- founder, and I were really obsessed with these growth clusters we kind of called them, where could you just get chunks of people at the same time in terms of acquisition instead of picking off every single individual user? Because we've seen all the tweets about how first time founders focus on product, and second time founders focus on distribution. And we obviously wanted to do both because we know that to be successful you eventually need to get to product distribution and a whole lot of other things. So we looked at where could we chunk users off in segments of many at a time as opposed to one after the other? And Slack was one avenue where I'm not sure if they've changed their security settings around this at all, and they might in the future, but at least when we were building on them about two years ago, it was still possible where if you had a Slackbot and you added it to any Slack workspace, you instantly had access to every single person that had ever been in that workspace. So Matt, in the Drift Slack, if you added Marlo to the Slack, we'd actually know all 500 at the time Drift employees, and we'd be able to scrape all their information, see their email addresses tied to their Slack profile, anything that was made public in their Slack profile. Obviously, we were not going to just spam all those people with the Slackbot messages because we had no content to send them that was actually relevant, but what we did was we focused on, okay, how can we actually immediately get access to a bunch of users? And then secondly, what can we provide to them that was super valuable? So Marlo was created out of the idea that meetings suck. We always complain about meetings, but we don't really take action to make meetings better. And this was pre- COVID, people were meeting person most of the time. This was around September of 2018, actually is when we started this idea of Marlo. And the idea was super simple. It was like," Let's just rate meetings. Let's just collect a score for meetings. Let's take NPS and make it NMS," which was net meeting score, a little cutesy way to game- ify the meeting scoring experience. What Marlo did was you would add it to Slack, and you would connect your calendar. So speaking of growth clusters, another great growth hack is calendars. They're inherently social. There's a ton of metadata around calendar events, and you can pick up who you're meeting with, how long you're meeting with them, the email addresses of the people you're meeting with, the names. And calendars are actually just an incredibly dense social graph of the people you're literally spending time with. And what Marlo would do is ingest your calendar information that was on your Slack. You'd get out of the meeting, and it would ping you and say," Hey, Matt, what'd you think of this meeting?" You'd have emojis to pick from rating the meeting, and then it would actually, as our first growth hack, we would look at who was in that calendar event with you, look at their email addresses, look at the email address on the Slack, and fuzzy match. And Drift went through a bunch of different name changes with some two Ts and two Fs, so there's a lot of interesting matching logic we had to do, but we'd match the people on your calendar with people who are in your Slack, and then we'd message them on Slack. And these would be people who had never heard or knew what Marlo was. So then we would actually give them a warm introduction and say," Hey, Elizabeth. Matt added Marlo to Slack to rate his meetings. Saw you just got out of a meeting with him, what'd you think of this meeting?" And that was our way at trying to grow user base of using the calendar, but then inform them of why was this random Slackbot messaging them by making it actually a very human context of piggybacking on the person that had connected their calendar to Marlo. So that was kind of the initial genesis of Marlo. And one thing that we actually did at the very end was closing the growth loop and saying after Elizabeth or whoever had rated their meetings, we would actually say," Hey, do you want to rate your own meetings, not just the ones that you're actually only in with Matt? Connect your own calendar here," and we'd send them the link to OAuth their calendar. And so that very quickly became a viral loop. We actually tracked it using K- factor, like social media companies looking at what percentage of people after they'd been exposed to this application would then connect their calendar, and we actually optimized purely for that.
Matt Bilotti: I love the concept of the growth clusters, where do they exist, and layering on top of what is an inherently social thing because that gives you so many more levers to build on top of. Right? The calendar is inherently social, whereas something... I don't know, I'm trying to think that's less social, like a task management tool, like project management tool, inherently social because generally you're doing tasks with other people versus if you're trying to do growth type tactics on something where you're generally the only user, like I pick it up and I don't have touchpoints, then there's a lot less to do there.
Ankith Harathi: Yep. Exactly. Yeah, so that was a great learning too. And it sounds like, oh, we kind of master planned this in retrospect, but really we were just obsessed with this idea of measuring meetings, and the best way we found to do that was Slack and through the calendar. But we initially tried for even in- person events, but now with the rise of software and how you're in Slack before the meeting, you're in Slack right after the meeting, software makes it a lot easier to have more touch points to the user as close to the event that you're trying to measure or where you're trying to interject yourself into the workflow.
Matt Bilotti: Yeah, and something you just touched on, which is how close you're injecting yourself to it. I think that's one of the things that was kind of magical about the way it was structured for Marlo was I get out of the meeting. As soon as I get out of the meeting, there's a touchpoint, which it's such a natural flow of time versus something that sends an asynchronous email detached from that. Whereas you were showing up to other people saying," Hey, you were also in this meeting, do you want to rate it?" And doing so at a time where it was the lowest friction, highest relevance.
Ankith Harathi: Yeah, we actually tried to optimize that actually a little bit by looking at how long after the meeting ended should we send the notification. Because if we actually send it immediately, one, as you know, meetings tend to go over. So you're actually probably still in the meeting, and how often if you're in a meeting, you get a Slack notification, you look at it and ignore it, saying," I'll deal with this later," and never come back to it because you forget about it. Especially if it's from a bot, you're very unlikely to revisit that channel and reanswer that poll. The second is in in- person meetings when the meeting ends, what do you do? Well, you actually close your laptop? You pick it up, and you walk out of the conference room, and you're going back to your desk or going to your next meeting. And so again, if you get a Slack message while you're opening up your computer and you have a ton of notifications, you're very unlikely to respond. So we tried to test a little bit of when is the best time to actually send the user that notification, and we found that our highest engagement was around three minutes after the meeting ended. We even tested asking at the end of the day because people have back- to- back meetings, maybe they'll just get the notifications all at the end of the day saying," Hey, rate the five meetings you are in today," boom, boom, boom, boom, boom. Which on then that people would kind of forget what happened in those meetings, in the zombie state of just walking through your day, and so asking them at the end of the day, you forget how you'd rate it, what specific feedback you'd want to give anonymously to that meeting. So it was in the moment and timing it just right after that ended where we could try to grab your attention a little bit.
Matt Bilotti: I think the thoughtfulness there is so critical in a way that a lot of other products that try to do similar growth tactics, miss. Like the amount of websites that you go to, where you show up and immediately it's like," Sign up for a mailing list," or 15% off, or I log into something and immediately it's asking me to refer my friends. It's like, this is not the time to ask me, right, but what you spent so much time doing was fine tuning. When is the right time to ask because that matters so much in the conversion rate, because if you don't get it, yeah. If you don't get it in the right moment, then I mean the, the amount of times that I've dismissed a" Do you like our app that you're using?" The timing of it is just bad, and then I don't want any part in it, and it's easy for you to get something like that wrong and then annoy people as their first touch point, rather than feel like," Oh, this fits here. I can interact with it."
Ankith Harathi: Especially in feedback, survey responses are historically very low. I think the average, and I might be wrong on this, but from what I remember, the average response rate when you're sending a large survey feedback, is around 15 to 20% is pretty average. What we were seeing with Marlo, especially in the first 30 days of a user's life, the response rate would be anywhere between 70 to 85%. As they would respond to every single one of the polls or 85% of polls sent out would actually have a response sent to them. So I think the medium of Slack was incredibly beneficial. The timing of it and also the simpleness of the question. It's a one question, emoji- based answer. You don't have to think about it. You're not reading what are the options of response? That was the only part of it that was required. You send one question. You could send followup data like choosing from pre- bucketed options of why the meeting sucked or writing a takeaway if you thought it was good, but we tried to make it simple, meaningful, as lightweight as possible.
Matt Bilotti: Cool, so let's talk through the pivot-
Ankith Harathi: Yeah.
Matt Bilotti: ...to what the product is today, which is Macro. And Macro is built in a similar way on top of another existing system. It still pertains to meetings. So maybe let's transition by just giving folks listening context as to why you made that switch. And then we can talk about the things that you've done in Macro to drive growth.
Ankith Harathi: Yeah, so Marlo was essentially a data play. We grew incredibly quickly based off of all those growth hacks. Within a few months, we had 30, 000 team business users, companies like Drift, like larger even Fortune 50s, Fortune 500s because a lot of them use Slack now. So it was great for both intravirality and inter, like between company, virality there too. We grew super quickly, and we had a ton of data. And very honestly, we didn't spend a lot of time looking at that data until the very end. And when we looked at it, we found some really interesting things. We could trend people's meetings over time, who they were meeting with, how effective those meetings were. We had this idea of creating a dashboard of your meeting makers and breakers, who could you meet with and you'd probably have a good meeting, or we could predict you'd not have a great meeting with based off the people. What was most interesting to us is actually why the meetings were not great. And what we saw is in virtual meetings specifically, because we could see the calendar invite, there's a Zoom link or Meet link, they were typically rated a lot lower than in- person meetings. And the biggest source of feedback for virtual meetings was one of our pre- bucketed options was not enough voices were heard. Basically somebody, or a group of people, dominated the conversation, making that meeting unproductive. And we just had an idea of what if we had Pokemon- style health bars underneath every single person in the meeting and you can see these people will have, like they had no health left, they're dying. You haven't included them in the conversation. Bring them back, resuscitate them back to life. And that was an idea we had. The other option we were considering is do we become a full blown analytics company? We had a lot of users asking us," I want analytics on how my meetings are tracking over time." We had managers saying," I'd love to know how my employees are conducting, my direct reports are conducting their meetings. How they're effectively spending their time." And very honestly, we did not go on to become an analytics company. We, John and I, our DNA is very much more consumer. We both worked in consumer facing roles prior to starting the company. We want to provide end user value, and we felt like becoming an analytics, big brother- type company, you have this inner flywheel of people providing feedback, but then the value is actually the data. But if you feel like you're being spied on by your manager, you're being reported on how effectively your meetings are going, you're not going to keep submitting that feedback, and then the flywheel breaks down. And it's kind of a shitty thing, and we didn't want to be that company. So instead what we did was we took that data and said," We want to make meetings better. Here's one nugget that people are dominating the conversation. Let's go fix it." And the core decision leaders, let's go fix it live. We don't want to be telling you after the meeting," Hey, that meeting sucked. Here's why. Try to remember this next time you go into a meeting." No, no one's going to remember that. People have information overload and recommendation overload today. So we wanted to fix it live while it was happening through an interface that was familiar. And so we made the decision to build an interface on top of Zoom. And at the time we started building, which was November of 2019, no one had done this before, which is essentially create a custom Zoom client, meaning our app Macro, you can join any Zoom meeting with, and it didn't matter if anyone else was on Zoom or not. It was able to actually join Zoom meetings. And critically for us, that was the most important thing to get right from the very beginning from a growth perspective is we wanted a high trialability, meaning we wanted to make sure that anyone who even wanted to try this product could immediately start to use it, and they didn't need their whole team to switch. They didn't need the IT admin to approve it. They didn't need a company contract to be written. None of that. You already had the Zoom subscription. Let's actually just use that. And you can use our app to join all those Zoom meetings, and those same Zoom links that were in the calendar. So minimize behavior change, minimize switching costs for you to actually start to try our app, high trialability, and also no effect on your team. And so we focused on single- player. We called it single- player mode where we're providing value to the end user, and let's get them on Macro using it on top of their Zoom meetings. And we started with that feature Airtime to show how much this person had been contributing in the meetings. So you can self- regulate, you could see who'd been left out, and easily add them to the conversation.
Matt Bilotti: So focused on single player mode.
Ankith Harathi: Mm- hmm(affirmative).
Matt Bilotti: Right? You're trying to get that use case right. How do you then think about how do you get another person in that Zoom meeting to know about Macro and try it out?
Ankith Harathi: Yeah, so that was exactly where we benefited a ton from the trialability, but then we saw very initially, Hey, these people are enjoying Macro, and they're meeting with the same people over and over again, but those people are still joining on Zoom. How do we convert those people? The same kind of K- factor debate of you're meeting of 10 people, one of them's on Macro, then that rest nine of them, when do they convert to using Macro? And so we did a couple of different things. The first is a very cutesy thing. Optionally, we changed our name in Zoom to say, Matt Bilotti( joined with Macro), and the name in Zoom shows up to everyone, so the tough part about building our own interface is that we could not control what anybody else saw because they were still joining via Zoom. So the only surface area that we could actually control was the video feed and the name of the people who are joining through Macro. So when joining with Macro, if you set the setting, your name will have joined via Macro appended to it. And so people see that and the people could prompt the conversation." Hey, what's Macro? I see your name says that in there." And we're trying to create as many moments like that as possible. We also in our settings, like we literally write," We're a small company just trying to grow. Lead us on to help us out." Making it very honest. This is not going to really help you, unless you want to show off that you're using Macro, which actually some people like, but we're just really honest about this is a growth lever for us. If you're representing us publicly, we'd love for you to do that and making that so that it was very transparent to the user. That was our first. The second big growth lever that we started to pull on was your Zoom contacts. So similar to Slack, your company's on one Slack subscription, and so everyone is on the same Slack. Same thing with Zoom. Everyone's on the same Zoom subscription. What's different about Zoom though is when Macro is downloaded, it's an individual choice. We actually do get access to your Zoom contacts, and so what we do is we actually populate those contacts into our application, similar to a mobile app or a social media app, when you download it, it'll say," Hey, here are your contacts from your address book, invite whoever." We do the same thing in Macro too, where instead of you having to go and search the email address, copy an invite link, send it to somebody. We pre- populate your contacts from Zoom, who you've been meeting with, who's on your company Zoom account, and with one click, you can hover over the name and invite them. So we're trying to remove the friction from, okay, you have the intent to share now how easy is it for you to share? And so that's the second big chunk of using existing contact history. And the last is I think something that you had just recently seen where we modify your video frame. So in Macro, expression is really core to what we do. And a lot of that comes through to the video, which is video shapes, video filters, video reactions. And so we have a camera layer that is very customized. And so now when you join any Zoom meeting, you actually appear the same way to Zoom users as you do in Macro. And it's very different than the kind of normal 16 to my nine box that Zoom users are accustomed to. And so that prompts a lot of questions that you kind of were talking about earlier, Matt, where people are like," How do you do that? How did you appear in that shape? How do I do that?" And that's what we want people to say is like," How did you do that? How do I get that?" So that's what we've done so far. And we have a couple of other ideas on how to keep that viral growth loop and optimizing that K- factor going further.
Matt Bilotti: Yeah, I love the stuff that you guys are doing. From my own experience, when I left on the joined via Macro. io, and maybe one out of every 10 or 15 people that joined the meeting with me would ask me about it. Like," Hey, Matt, what's Macro?" And I would tell them about it. And then since you made that change where you show me in my circle to other people, it's like more than half of people that join the Zoom with me is like," How are you in a circle?" And it prompts that conversation, and because I love using the product, which I think is important here. There's a difference between making a change like that to prompt the conversation when the user generally is more passive on the product or is not excited about it, or would rather it be a my thing versus Macro, I'm excited when people ask because I get to talk about it, and it's this cool thing. And I get to bring somebody into the know of what this thing is and how they can get it too.
Ankith Harathi: Yeah, so there's I think three core decisions that we made to get to that point. The first is we're prioritizing the people who love us. So in an early stage company, you can't try to appease the needs of everyone, and what we've built is really opinionated software. We know that there are people who are going to not like the product, maybe hate the product, find zero or negative value in it. There are people who absolutely love the product, and this is their go- to. It's replaced all their Zoom client usage with our application to join all their Zoom meetings, et cetera. And there are people in the middle feel like this is interesting. I'll be more passive. And we chose to just, we're only going to optimize for the people because we want to get a hundred, a thousand, ten thousand, a hundred thousand people who absolutely love us and find and excavate and keep defining that core persona. And so we want the people who use Macro every single day to be obsessed with it, to love all the features, and that we know that we're serving them really, really well. That was the first decision it's like optimized for your true fans. The second was actually not a growth- related decision, but a product decision, which is it was necessary for us, especially in the pillar of expression, for you to appear the same way in Macro as you did in Zoom. One of the biggest pain points that we had heard of is there's this barrier and confusion to," Okay, I look the same. I look this way in Macro. It's a custom interface. It's very different than Zoom. Yeah, it's a completely different app. How do I look to Zoom users? What do they see?" A lot of that stems from the hesitation and the fear that I don't want to be disruptive to other people in the meeting. I want to control my background. I want to control my experience. And when you talk about expression, we want to make the user feel in control. So it was core for us to say," However you look in Macro, however you're choosing to present yourself in Macro, you will look the exact same to a user joining that meeting in Zoom." And that was a non- negotiable for us as well. And the benefit of that is that third point, which is it is great product marketing. It's a great conversation topic. It's very visible, and it's impossible to ignore when you join a meeting with someone in Macro.
Matt Bilotti: Any other growth related things that you're thinking about, or approaching that you want to share before we call it a wrap here?
Ankith Harathi: Yeah, so I think that the only, what we're thinking about now is the second kind of phase, which is the first is this awareness. We want to get as many people aware that someone is joining their Zoom meeting in Macro. And so the awareness comes through the joined via Macro through the shapes reflecting on the Zoom with the filters, the reactions. The second is conversion. As soon as we prompt the conversation of how'd you do that? How can I do that? The intent is there. Now we actually have to make that as easy and as simple as possible for them to immediately join us. So one, we're thinking about that conversion step, one of our ideas is around deep linking. So as soon as you say," How do you do that? How can I do that?" With one click, we want to make it so that you, Matt, can send a link through Macro and it will appear in Zoom chat to anybody else in that meeting. They can click it and without even thinking about it, they're now in that meeting with Macro. And yes, there's more steps involved with the downloadable. We don't have a web interface. Zoom as Web SDK is still kind of in its infancy, but making it super simple so that once they go through the download and install, they don't have to do any setup. They don't have to do any configuration. They're immediately in that same meeting with you where they had that conversation, but now through Macro. So that's kind of our next step that we're trying to focus on.
Matt Bilotti: I love it. It's all about, things I've learned here, it's all about being thoughtful around the message and the timing. It's about making sure that you're showing up in the right way, that you're aligning with the product identity. It all falls into place. And then it's all also about removing as much friction as possible to that conversion point. And the let me share this with somebody. I love what you guys are doing, and I'm excited to keep opening Macro every day and finding some new stuff and talking about it with people that ask why I'm in a circle.
Ankith Harathi: Yeah, I love it. Well, Matt, thank you for having me on the podcast. Thanks for the Drift folks, too. It's been great chatting.
Matt Bilotti: Absolutely. For those of you listening, thank you so much for spending your time here. If you liked this episode, check out there's dozens of other ones with great guests. They're worth a listen. If you're a fan of this episode, hit the subscribe button as well. But super appreciate that. If you've got any feedback, anything like that, my email is matt @ drift. com. I know there are so many things you can do with your time, energy, efforts. Stuff you could watch, listen to, or work on. Whatever it is and you're spending it here listening to the podcast, and I super appreciate that. If you liked it, also a review would be cool, written review. I'm trying to get a few more of those, but otherwise I will be quiet and wrap the episode. So thanks so much for listening. Catch you on the next episode.