After two failed ideas, Calvin and his co-founders finally found traction with a user analytics tool, growing from $0 to $1 million ARR in only 14 months.
Davis Baer: What’s your background, and what are you working on?
I’m Calvin, one of the co-founders and CTO of Segment. I started coding a looong time ago on a TI-83+, by building goofy games and simple graphics programs. I really started getting a lot more CS theory in college (especially distributed systems, crypto, and algorithms). From there, I started Segment with my freshman year roommates (Peter and Ilya) and a designer we met from RISD (Ian).
Segment gives you a single API to collect data about your customers, synthesize it into one place, and adapt it to any of 200+ SaaS tools (think Google Analytics, Mixpanel, Salesforce, etc). If you’ve ever had to build a data pipeline for your company, and connect that data to dozens of data warehouses, marketing tools, and BI tools–we build a product that can probably help you out. There’s many reasons that our customers adopt Segment, but I’d say the top one is that engineering teams want to spend less time integrating various tools, and more time building their core product. We’re also fairly popular amongst analysts who are looking to get a ‘single view of their customers’ and product folks looking to better understand their users.
We launched roughly 6 years ago on HN (12/12/12 to be exact). Since then, we’ve helped tens of thousands of companies manage their user data. In particular, we’ve helped a large number of fast-growing startups use their data to build new and exciting products (Instacart, Glossier, Strava), and a number of large enterprises (IBM, Levi’s, Crate & Barrel). Our team is a little over 300 people, with offices in SF, Vancouver, Dublin, London, and Sydney. Our data pipeline currently processes 300B analytics events per month, averaging about 150k events per second.
What motivated you to get started with your company?
This is a bit of circuitous story, but bear with me here.
Honestly, the original reason we applied to YC was that the three of us wanted to work together. And we thought that building a startup was ‘cool’. I wouldn’t say we were the most business savvy 21-year olds out there :)
When we applied to YC, we started with a completely different idea than Segment today. We had just finished up our junior year of college, so we wanted to solve our own problems as students. We started by building a product called ‘Classmetric’. It was a tool designed to be used in the middle of a college lecture, where the students could simply click a button on their laptop to tell the professor whether they were confused or not. Professors would get a real-time dashboard, telling them exactly how confused their class was, and whether there were any questions that were popping up during the middle of lecture.
YC liked the idea and our team, and we were accepted into the Summer 2011 batch. We tested at a variety of schools in the bay area: Stanford, Berkeley, and Santa Clara. From there, we decided to move back to Boston and launch in the classrooms at MIT (since we had a close connection with the professors there).
We put Classmetric in fall classes, excited to test the product with “real” (aka non-summer) classes. The results… were a spectacular disaster. Students went to Facebook, Gmail, Youtube, etc… all of the hundreds of most distracting sites on the internet. Professors were getting irked that their classes were now more distracted, not more engaged.
We knew we had to go back to the drawing board. So we pivoted to something new. We thought about problems we had building Classmetric, and one of them was around figuring out who was using the product, and why. We wanted to know the differences between 300-person classes, and 25-person classes. The differences between Harvard and MIT classes. The differences between Anthropology and Biology classes. We wanted to figure out what was working, and what our users were doing with the product.
So we switched ideas entirely to a new idea (though also not what we do today). It was an analytics tool (similar to what you’d get from Mixpanel or Amplitude today) that allows you to Segment your users by different criteria (hence the name). We spent a little over a year begging different companies to install us. It was a cool product (you can find some old screenshots here), but we didn’t have a firm grasp on what real businesses actually use their analytics for. By the time we had gotten to the end of the year, we had changed our minds about the customer we were targeting three or four times, and meanwhile none of us had ever run a website with legitimate traffic.
By December of 2012, we knew we were getting down to our last options. Even after living on a shoestring budget, we had about ~7 months of runway in the bank before we had to go find ‘real jobs’
So we decided to give it one more shot. My co-founder Ian had the initial idea for the product as it exists today. He guessed that there was a big opportunity for a new company to come in and help integrate all of these different analytics providers, each of whom had an API that collected mostly the same data, but differed in annoying, subtle ways.
During this time, we had an open source library called analytics.js that we’d made as a ‘growth hack’ to send the same data to our analytics product as you would to Google Analytics, Mixpanel, and KISSmetrics. We added ourselves as the fourth provider, and while people seemed to like the library and the idea, they didn’t care about sending data to our tool.
So we decided to do a proper launch for analytics.js on HN, and make that our only focus. We put up a landing page instructing users to leave their email for a hosted version. We got about 500 signups for it, and proceeded to have a 7-day hackathon to build the v1. I remember we all packed up to go home over the winter and feeling incredibly pumped that traffic to our API was reporting a constant stream of tens of requests per second. For the first time in 1.5 years, we had actual users.
The rest, as they say, is history.
What went into building the initial product?
In terms of building the initial product, a few of the early milestones:
- 1.5 years and two failed ideas to learn to work really well as a team, think about the space, and develop product skills (before launch)
- 7 days to launch from having the idea
- 3 months from launch to start having ‘real’ users who probably would’ve paid us
- 9 months from launch to actually start charging users
- 11 months from launch to close our first contract over 12k annually
- 14 months from launch to close our first 1M in ARR
Thanks to YC’s initial investment, and a small seed round that we had raised, we were able to devote ourselves entirely to building out the product. We were really fortunate in this aspect, as well as in the fact that we kept our personal burn incredibly low. Since we were just out of school, we had few commitments, no expectation of salary, and no problems living together. We lived and worked out of our apartment, cooked a lot of pasta, and paid ourselves $1,000 per month (the company covered the apartment). I shared a room with Peter where our beds were literally 8-inches apart for most of our time in Boston.
Because we were running out of money by the time we launched Segment, we focused entirely on testing out whether it was a viable product. We cut scope incessantly to the point where we shipped a ~200-line javascript file and a landing page, but nothing else. We wanted to know whether we should keep going or try a new idea as quickly as possible.
Almost no part of Segment’s first version remains, but we used:
- Node for our website, API, and CDN (shelf life of about ~1.5 years)
- Redis as our primary datastore (shelf-life of about 4 weeks)
- RabbitMQ as our messaging queue (shelf life of about ~2 years)
- AWS as our main cloud (we’re still on AWS, but have moved accounts and use a very different provisioning scheme)
At launch, I remember we got a good amount of feedback from the HN community, and from various YC partners who we talked with.
How have you attracted users and grown your company?
Initially, our traffic was all via our HN launch, and emailing out to users on our signup list.
The first thing after the HN launch that put us on the map was an article in TechCrunch. Our way of getting press was by drafting up the exact text we had for the article, and then emailing a bunch of journalists to see if they would be interested in tweaking it and re-publishing.
From there, I’d say there were three main things that we did that were really successful for:
1. Publish useful and interesting content. Our first avenue for getting users was the Segment blog. Pretty much since day one, we made it habit to write up interesting technical content, share what we were working on internally, and help users think about analytics. That last point was what spawned our Analytics Academy, a course for learning about how to use analytics with your business. I’d say the key thing here that made this content actually useful was trying to figure out 3–5 concrete things that a reader could take away and use with their business. We tried to avoid posts which were mostly devoid of content and a thinly veiled ad for the product.
2. Open source. We were a developer focused product, and the four of us contributed heavily to various open source projects. It helped get our name out there, and also helped us connect with our eventual first hires (TJ, Anthony, and Amir). We contributed actively to a number of javascript projects, routinely published internal node modules, and generally tried to open source whatever we could to build cleaner abstractions. We’ve continued this trend today with projects like Evergreen, Nightmare, and Metalsmith.
3. Never stopped launching new features. We kept talking to customers obsessively. Those first weeks were what taught me the true power of Livechat tools. During that time, we discovered a lot about the next 4–5 problems that we could help them solve. These requests became the genesis for the launch of our server-side libraries, mobile libraries, next hundred integrations, and warehouse features.
What’s your business model, and how have you grown your revenue?
We currently charge users based upon the concept of an MTU (monthly-tracked-user). The idea here is that if Segment is helping you grow your userbase, we effectively grow with you. It’s been the closest proxy for value that we’ve seen.
By number, most users sign up via the website, add their credit card, and the payments go through Stripe.
In some cases of high volume (or more custom integrations), we’ll give businesses a discount vs what they would be paying us directly for the MTUs we count. For those agreements, our sales team helps coordinate to help figure out what sort of pricing plan makes sense for the customer.
When we first started out, we charged by ‘integration tier’ and API call volume rather than MTUs. But as it turned out, this was really a poor metric for value. Charging by integration tiers caused users to avoid turning on certain integrations, sort of taking way the core value prop of our product. And charging by API call volume covered our costs, but it doesn’t really correlate with the value a business gets. Revamping this pricing was one of the most significant things we’ve done as a business, and it’s made the pricing plans simpler for customers to understand.
I can’t comment on exact revenue numbers, but I can share that we’re currently doubling in revenue every year.
One interesting thing for us is that we didn’t charge customers for the first 9-months of using the product. I remember when we were first trying to gauge how much we should charge the product… we just asked everyone who was using the free product. We sent them a survey using the Van Westendorp pricing sensitivity method and assured them that we would charge them a fair rate. I’d say having this initial signal, and engaged userbase who were getting a ton of value from the product was incredibly impactful. I think most SaaS businesses lose out on ~30–50% of their revenue just due to poor pricing, so it’s worth getting it right!
What are your goals for the future?
In terms of Segment’s product, we’re just starting to build the infrastructure that we’d dreamed about from the early days. This year, we launched two new products, Personas and Protocols, both of which are built on top of the core infrastructure we’ve established to collect customer data. Over the next year, my hope is that you’ll see a lot more products like this–all of which are aimed at helping companies manage and access their customer data. In the next quarter, we’re planning to launch an API for managing Segment resources as well to truly allow users to automate the ways that they are collecting analytics data (if you want preview access, please reach out!). We’re doing some cool things there in terms of generating client libraries, using protobuf, envoy and the like.
There’s also the desire to have the maximal impact on helping every business in the world better interact with their customers. To get there, we’ll need to become a large, independent company–who is able to adapt customer data from wherever it lives to where it needs to be accessed.
What are the biggest challenges you’ve faced and obstacles you’ve overcome? If you had to start over, what would you do differently?
There are two big things I would’ve done differently if starting over:
Six months ago, I read John Doerr’s “Measure what Matters”, about the same time that we were rolling out company-wide OKRs at Segment. The results that I have seen have been staggering. Having company-wide goals allows us to focus repeatedly only on what’s most important, and figure out a path to get there. I would adopt OKRs, even from a size of 5–10 people.
Over our time building Segment, we’ve had a handful of customers who just ‘get’ Segment. They give us tons of ideas about where we could take the product, ways we could solve problems for their business, and are constantly pushing the bounds of what the product does today. To call out a few, these are people like Jon Hawkins (who bought our first annual account), Guillaume Cabane (who constantly gives us interesting ideas), and Kyle Gesuelli (who is constantly pushing our personas product).
We’ve informally asked for their feedback in the past, responded to their messages, and met up at conferences, but as we’ve grown, we’ve wanted a way to capture their voices much more often. We’ve started building an advisory board of customers like them who are both deeply familiar with the product and the problems it might solve.
Have you found anything particularly helpful or advantageous?
The biggest helpful ‘hack’ I’ve adopted is using Audible. I typically listen to books slightly faster, and it allows me to easily learn things while I’m commuting, running, working out, whatever. I’ve pretty much given up reading most social media, tv, podcasts, etc–just since it’s hard to replace the long term knowledge density that you get from a book.
There are few books that I’d recommend any entrepreneur reading:
- Thinking, Fast and Slow
- Smarter, Better, Faster
- Measure What Matters
- The Lean Startup
- The Hard Thing About Hard Things
- any PG essay
Anecdotally, I’ve noticed a few other superpowers that I’m currently working hard to adopt (or have found it’s made a huge difference)
- keeping inbox zero and a super short turnaround time (my co-founder Peter is insanely good at this)
- explaining an idea in a concise, coherent way (this often makes more difference than the quality of the idea)
- focusing only on the most important problems (my co-founder Ilya is great here)
- giving people hard problems that stretch them in some way, and watching them rise to the challenge.
What’s your advice for entrepreneurs who are just starting out?
I think most of what YC tells you is spot on. Launch early and often. Talk to your users incessantly. Go a level deeper to just what the user wants to really understand their problem.
Additionally, I’ve found there’s almost no substitute for just moving quickly. Whenever I have a decision point, I ask myself if I need more information to make a decision. If the answer is ‘no’, I make the decision then and there. If the answer is ‘yes’, then I figure out what that information is.
I’m also a big fan of Jeff Bezos’ “regret-minimization” philosophy. In essence, it says that you should do things with the least amount of future regret–not the least amount of risk.
Where can we go to learn more?
Our website is at segment.com. I semi-regularly blog at our company blog: https://segment.com/blog/ and less-regularly blog on my personal blog: https://calv.info/. The company twitter is @Segment and I’m at @calvinfo.
I’m happy to answer other questions as well, feel free to shoot me an email at calvin [at] segment, DM me on twitter, or comment here.