What do we know about how Meerkat Works?

“The future is live. The future is real-time. The future is now.” I wrote that in 2010 about live video innovator Justin.tv (which pivoted into Twitch.tv). Five years later it appears the future is now once again.

Meerkat has burst on the scene with a viral vengeance, so I became curious. Meerkat is throwing around a lot of live video. It must be chewing up cash at an early funding round crushing rate. How does it work?

Unfortunately, after digging deep, I found few specific details on their backend architecture. What do we know?

The cash burning surmise seems to be correct. Meerkat secured another $12 million in funding. The streams will continue to flow. Bandwidth is cheaper than it used to be, but it is still expensive. Aether Wu did made an estimate over on Quora: So let's consider a scale of 1m users online simultaneously. Every 20 minutes, it costs 100k gigabyte, which means $4k per hour/$96k per day/ $2.9m per month. So if we scale the business to 10 times bigger, it is about $1m per day?

Meerkat was three years in development by an Israeli based team of up to 11 developers.

Meerkat can handle thousands of live streams while maintaining good video quality. Perhaps implementation details were discussed in a Meerkat session, but, well, you know. Ben Rubin, the thoughtful and nearly ubiquitous founder of Meerkat, wrote on ProductHunt that “I'm in love with HLS. For Meerkat use case HLS is better despite the 10-15 sec delay as it giving advantages in stable, crystal clear quality. We can use it to shift stream to audio only when connection is low, or do all sort of tricks.” HLS is HTTP Live Streaming.

That’s about it. While the backend architecture remains a mystery, what I did find is still very interesting. It’s the story of how a team creatively hunts and sifts through a space until they create/find that perfect blending of features that makes people fall in love. Twitter did that. SnapChat did that. Now Meerkat has done it. How did they do it?

Stats

Meerkat signed up more than 15,000 users in the first three days, with roughly 8,000 video streams. (Wall Street Journal). Over 500,000 users signed up in the first month.

11 developers. The dev team is in Israel.

1,500 people can tune in in less than 2 seconds.

Over two years of effort went into to building the backend.

8 weeks to build the client.

Jimmy Fallon has the record of over 5,000 simultaneous viewers.

Before SXSW they were at 40K users, after they were at 200K users.

~19% spend 2 hours a day watching, ~8% spend 3 hours, ~5% spend 4 hours watching.

Platform

iOS. They targeted the tech elite in San Francisco so iOS was the OS of choice.

Twitter was initially used for its social graph and as a chat platform.

HTTP Live Streaming (HLS) and H.264.

Just What is Meerkat?

Meerkat is sort of like Twitch.tv, the live video game viewing platform, only the game being watched is your real life. Meerkat lets you focus on your favorite topic, which is of course you and what you are doing.

Ben Rubin’s coming out pitch on ProductHunt shows Meerkat’s clear and concise vision:

Co-founder of Air here. I was hoping to get some feedback on this new thing we’ve been working on called Meerkat. --Meerkat's mission is to get live streams to travel at the speed of tweets, so it's riding the fastest news distributor network out there, Twitter.
Recently, we've been thinking about the wide range of news events and conversations happening around the world. Whether it’s civil rights issues being protested in Ferguson or musicians interrupting each other at an awards show, we kept wondering if we could get access to these moments in an easier way.
We wanted to give you the option to press one button and stream live video over Twitter in the most frictionless way possible. Seamlessly moving the conversation that happens on the live stream to Twitter and vice versa.
It's a "Hands off" live streaming layer on top of Twitter, so all connections are made automatically for you on the go. You don't need to do anything, there is no search/profiles/feed etc. As soon as you want to live stream something all your followers on Twitter will be notified that you're going live and can start watching you and what you're seeing.
Lastly, you can also schedule upcoming streams in the next 24 hours.
Think about it as a live video button for Twitter :)

Twitter was patient zero for Meerkat. To see how well it spread take a look at this amazing graph from NodeXL:

Meerkat is the video equivalent of early Twitter

The difference is Meercasters can literally show you what they are having for breakfast in real-time instead of just writing about it. And oddly enough, Periscope, Twitter’s answer to Meerkat, has a thing developing where people live broadcast what they have in their refrigerators. Yes, that’s a thing.

That’s not the only comparison to Twitter. Meerkat started off as a side project. Twitter itself started off as a side project within Odeo. So both struck gold in an eerily similar accidentally on purpose after a lot of work sort of way. To quote Battlestar Galactica: All this has happened before, and all of it will happen again.

Meerkat’s Origin Story

@benrbn: Our team has been building in the live video space for almost 3 years now. 4 products, layoffs, shut downs, & finally, the space awakens

Meerkat like many products followed a Hero’s journey. It ventured out, failed, learned a lot, transformed, becoming something better in the process.

Leo Laporte had a great interview with Ben Rubin on a recent episode of Triangulation that explored this journey in vivid detail.

If you think Meerkat was the product of some lucky guy working from his mom’s basement, think again. Ben comes off as very thoughtful and methodical. There’s a method to the madness here that others can learn from. Every journey needs its Virgil.

The company that built Meerkat is called Life On Air Inc. out of Tel Aviv. In 2013 they started with a product called Yevvo ($4 million in Series A funding), an app offering users a way to tweet a link to their live video stream. Yevvo was a kitchen sink version of one-to-many live streaming. It had too many features so it was complex and hard to understand.

Although Yevvo had over 400,000 users after a year, they weren’t getting the traction they wanted. (Meerkat was released at the end of February and had over 500,000 users in its first month).

So they rolled up all they learned building Yevvo and came up with six simple experiments in live streaming apps. The experiments were a way of finding out what works. They thought something was there they just didn’t know what it was yet. The experiments were a way of teasing out that something. Ben referred to this process as navigating the product maze. The goal was to put a product out every two months.

To increase the pool of money available to run these experiments they had to let go of five people.

They worked on a one-to-friends product. I believe this app was called Air, which was released in 2015. Air has a similar feature set to Meerkat, but it was invite only, the idea was to share live video with real-life friends.

The CTO worked on a one-to-many experiment that was push button live video for Twitter. This was Meerkat. Meerkat opened up sharing to a user’s social graph rather than restricting it to just friends.

As fate would have it Meerkat was a hit. The experiment ended. The rest is history, or at least all the history you can write in just a few months. We’ll cover a lot more in the Lessons Learned part of the post.

Is Twitter making a mistake?

Twitter cut off Meerkat from Twitter’s social graph. Clearly that is Twitter’s right as they say you can’t use their API in a competitive way. No argument there.

I wonder if Twitter isn’t being shortsighted. Their social graph has an enormous value, which makes it the perfect lock-in play. Everything that happened in Meerkat happened on Twitter, so it was driving huge engagement on Twitter. It would have probably drove in lots of new users wanting to join the fun.

Isn’t that what matters to Twitter? Doesn’t Twitter want higher engagement and new users? Does it really matter if that happens through Periscope? Twitter is forcing Meerkat to go to Tumblr, Facebook, or any other port in the storm. Why when there's a real win of really partnering with developers as a platform? Developers and their products drive users to use your product. Is there something I’m missing here?

Lessons Learned

Livestreaming is easy, it’s chat that is hard. Unfortunately I don’t remember where that quote is from. Yes, Twitter let Meerkat hook into its social graph for a time , but what may go unnoticed is the value of Twitter’s awesome chat infrastructure. To see how hard it is to make chat work at scale take a look at The WhatsApp Architecture Facebook Bought For $19 Billion. For Meerkat to grow so fast they needed scalable chat. Using Twitter as their chat service was a smart decision. It let developers focus on their product.

Do things that don’t scale. Handling porn is a big problem. On Meerkat a stream can be flagged. When there are three flags a stream won’t be visible to new watchers. A human then looks at the flagged stream and then decides to keep it or not. This approach obviously doesn’t scale, but it does allow Meerkat to grow without losing focus.

Use other people’s social graph. Obvious, but it’s amazing how much power this idea has in practice when an app is perfectly tuned to make use of it.

Don’t store stuff. If Meerkat had to store all the video they were processing then the economics of Meerkat would be completely different. Ephemerality is an inherently scalable strategy. This is a lesson from SnapChat.

Remove friction and make the user feel comfortable. They say ephemerality was not a cost based decision. It was a lesson they learned. After removing friction by making the app push button simple, they wanted to make sure that you control the content after you create it because it’s important to make sure you feel comfortable pressing that button and streaming, otherwise people won’t press the button.

Use convention. There’s no anonymous watching or commenting on Meerkat because Twitter is being used. When the personal brand is on the table both the broadcaster and the watcher are committed to good quality of conversation.

Cut deep to give yourself time to find a way. They had to let go of employees to give themselves enough runway to figure out what worked. The key here is they had a plan, a series of experiments, of how to use that money. It wasn’t just a desperation move.

Different is better than better. Choosing Meerkat as a name was a risk, but it worked in harmony with the rest of the product decisions. Everything made sense and worked well together. It makes sense because of how a meerkat behaves. That’s it’s yellow makes sense. That it’s built in the way it’s built makes sense to people. People understand and are receptive to it. There’s no formula. Have a vision that makes sense for everyone then follow your gut and call BS on each other. Develop a culture where people can say this doesn’t work.

Simple is better than better. Within a few seconds of downloading the app you can be streaming to your entire social graph and the app will handle tweeting out everything for you. That’s simple.

There are a lot of things you learn after you fail a couple of times. Failure helps you learn what will work and not work. Some of what they learned: how to activate a watcher, how to activate a broadcaster, what is a live stream, why it is important to show people’s faces, why it is important not to save video, when is a viewer lost if a stream is not loading. For example, the animation of grabbing the stream lets users know the application is working on getting the stream for them and that they should stay put. All they learned from the failure of Yevvo made Meerkat possible.

Commit to the vision and the community. Products can change over time. If something is not working your community will support you through product changes. You owe it to the community to try something else if your product sucks.

Notice what works. Let the community lead the way. Listen to them. This can only happen if you make something, but once you do the feedback can tell you what part of your product really works for users. Justin.tv learned to focus on gaming video. Meerkat was born out of an observation on the use of Yevvo. With Yevvo you could tweet and go live. People were going live on a Lady Gaga show and put in a hashtag that a super fan would retweet. Someone with no followers would have a 1000 people watching a Lady Gaga show. This sparked the idea of push button live video for Twitter.

Keep building and call BS on yourself. If you do that then eventually you’ll hit on something. Maybe. For a decade there has been live video but there’s still no winner in the one-to-many synchronous space. Now everyone is walking around with a capable computer and an internet connected camera connected to social networks. New products are possible.

If the last decade was about sharing the next decade is about participating. Meerkat removes friction from the production and participation of live video. This combination can be impactful in the vertical of politics, education, and journalism. The participants can actually give their opinions and change the content. When you change the content you change the reality. What happens when 50,000 people are watching something and their opinion actually matters? There’s a lot more to learn about the changed mindset from consuming content to participating in content. The line between the participant and the broadcaster is completely dissolving.

There are four kinds of messaging spaces: one-to-many synchronous (Meerkat, Periscope), one-to-one synchronous (Skype, Facetime), one-to-one asynchronous (chat), one-to-many asynchronous (Facebook, Twitter, Snapchat Stories).

In every space there are at least four main verticals: beautiful, formal, non-formal, immediate. There wasn’t a definition of what each meant. Periscope is in the beautiful vertical because it’s a gorgeous well designed up. There are always like four companies competing in each vertical. One-to-many synchronous is still a child. It’s a good thing that there are a lot of smart teams trying to figure out how to make all this work.

Have advisors. They should help you distill the value of the product, come up with a language for talking about the product, help a team understand what they are trying to do, how to communicate it, and how to execute the vision.

Portrait is native to the phone. Video should be consumed horizontal, unless the medium is contributed to and/or consumed on the go. The only way to do that is on mobile and since a phone is held vertically portrait mode is the correct choice. If your job is to remove friction in the default behaviour then vertically holding a phone is native.

Cell phone networks can handle live streaming. That’s one roadblock removed.

Timing matters. Why didn’t Justin.tv hit? A few years makes a difference. The ability to link into social networks, the ubiquity of mobile, fast cell networks, the emergence and acceptance of ephemerality, the rise of selfie culture, all these forces created a new exploitable niche.

Adoption has been professionalized. We now know how to adopt things fast. Which is great for the small select group of apps that can figure out how to ride network effects. Sadly, most apps are tossed into the land of unwanted toys.

Ben Rubin on Twitter. Some stats were taken from his feed.

Meerkat: 15 Days In.

Instagram Cuts Off Kevin Rose’s Photo App Tiiny From Its Social Graph

Wow That Was Fast — Facebook Blocks Twitter's Way To Look Up Friends

The Social Network Wars Begin In Earnest: Facebook Bans Google Friend Connect

5 interesting things about Meerkat, 2015′s hottest app

Justin.Tv's Live Video Broadcasting Architecture

Social Media Lessons Learned from Meerkat

Meerkat's founder explains his vision for the Internet's favorite livestreaming app

Trying to figure out how display Meerkat Live Stream in VLC

Mobile Video quality control (iPhone + HLS)

Meerkat's founder explains his vision for the Internet's favorite livestreaming app