From SaaS Beta launch to 10 users, and then ... Covid 19
17 apr. 2020 - 24 min.
17 apr. 2020 - 24 min.
4 months ago, I published our first blog post on bootstrapping RocketChart from idea validation in one day to Beta launch. The goal was to share our successes, mistakes and learnings from the first 5 months.
Our team received astonishing feedback from folks around the world! You really loved our transparency and honesty. It triggered many incredible chats on LinkedIn or email, in which we learned a lot - thank you 🙏🏽
Thank you to the +240 people who took the time to write me a note after the reading
Some of you shared their own stories, struggles, and questions. I’ve realized many of them were the same everyday challenge we are facing with RocketChart. It encouraged me to write again to share our next 4 months. The goal is to provide valuable and actionable insights for you to use.
So, here we are. Another big blog post to share our learnings, failures, and successes from: running our SaaS Beta, to getting first real users onboard, and failing our official launch.
In this article, you will discover:
- How being obsessed with your business can actually kill it
- How providing value makes magic: thousands of readers, 54 additional Beta signups, podcast interviews, ...
- How leveraging a Beta helps you improve product
- Reaching 10 users, planning the official launch, and then ... Covid 19
- 4 key takeaways from our journey
- Conclusion: the journey is going to be legendary 🔥
As I always say, you won't learn any Secret Growth Hacks there. You won't find any gold bullets to get you instant PR coverage for your company, ending in thousands of signups and millions in revenue. We are just 3 french hustlers bootstrapping a business to earn a living 🥖 🇫🇷
This article is the second episode of our journey. Here you can have access to the full story.
Being obsessed with RocketChart almost killed it
In every joyful journey, there are undisclosed dark backstages. We always cover the bright side of startup founders: media coverage with big founders smiles, happy teams and mind-blowing article titles.
You know what I mean ... 🙄
But behind this distorted reality hide a terrific truth: founders are fucking lonely.
You are lonely because you are in charge. You are lonely because you have to make decisions. But you don't know if they are the right ones. If you bootstrap your business, you also feel lonely because if you don't sell your product or service, you won't eat 🥺 So you start thinking of your business all the time, and start living in your own head.
Then, from the moment you wake up to the moment you try to sleep, you keep thinking about your company: how to boost sales, how to grow revenue, how to get more done, how to escape your competitors.
In October 2019, I was anxious always thinking of RocketChart and our next moves. What still has to be done? What should I do tomorrow? Why does it take so long to build the product? It began to be an obsession 🤕
I wasn’t living the present moment anymore. Always in my thoughts. Never smiling, even with friends. Some of them still remember a drink where I really wasn't doing well. Enjoying time with friends or family became difficult. I was tired and didn’t enjoy being there with them. Every moment of my life was about RocketChart. Even with my girlfriend... I mean, physically I was here, but in my head, I was away thinking of our roadmap, our marketing strategy, our pricing... 😔
I wasn’t sleeping anymore. Falling asleep at 3 or 4 in the morning. Even very tired, my brain was like "You are exhausted, but let think about how will you get your first customers". I remember trying to take naps, but I couldn't even fall asleep.
How did this desperation circle start? Good question. It might be triggered by a combination of factors:
1/ Yes, we want to bootstrap RocketChart. But we were still building the product. No one was paying us. I was living on my savings, but it was almost the end. In September I applied to get subventions. Each time, I was rejected. Looking at my bank account, being more and more empty. A few more months of cash runway made me anxious 😰
Now that we launched the product, I manage my cash with RocketChart. As you see in our chart, I finally get a monthly €1,000 loan in November to keep surviving, just for 5 more months 😓
2/ After quitting my previous job, I fixed a one-year deadline with my girlfriend. I remember saying to Camille: "I have enough savings to survive one year, so I give myself a year to start a business and live thanks to it". I crashed a first project after 8 months because it went very badly with my first partner. Then we started RocketChart with Marc and Elie. The one-year deadline was close. And I failed to launch a business within a year. This reflection of failure resonates in my head. Pushing me to work harder, and harder. Making me more and more anxious.
Until I cracked.
How to escape
It had to stop. I needed to escape. I was exhausted. So I sent a message to my mom, asking to stay at her place to do like nothing 😴
For the non-french, I told her I had sleeping troubles, that my brain never recharged, and I asked to come to her place
Marc, my little brother and co-founder, saw the message and immediately called me. He wasn’t aware of this situation because I didn't say anything. During the 2 hours call, I detailed all my feelings and emotions, and I think I cried. We identified together what was going wrong. Immediately after the call, I jumped on a long talk with my girlfriend also. Again, I said everything I had in my heart and she helped me to escape this vicious circle. I almost cried while talking to her. I suffered a tough period, but so did she! 😔
During these two discussions, a feeling of well-being started to appear. It was so good to empty my heart and feel again the present moment.
Thanks to them, I decided to take a 4 weeks break. C-O-M-P-L-E-T break. Meaning no LinkedIn, no emails, nothing. We went to Mexico with Camille and some friends for 16 days 🇲🇽. And I literally disconnected my mind from my thoughts. I was sleeping like a baby again. I was living in the present moment again. And I was enjoying it! 🥰
Camille and me, beautifully face-painted for Dia de Muertos at Oaxaca
I came back well-rested, and with a fresh mind. During this time, Marc and Elie, worked very hard to finish the Beta. They're both amazing and so good at what they do! I can't thank them enough for being here by my side.
I was now ready to onboard Beta testers. But most importantly, I feel better now. Living the present moment and nothing else 😊
Edit January 29th: I fell in this trap again... Only regarding sleeping troubles. I'm trying meditation and working outside my home. It has helped a little, but still hard to sleep sometimes. If you have tips I would love to hear from you: just add me on LinkedIn and share it, please 🙏🏽
Edit April 26th: Fell again. My mind is always focussed on RocketChart.
Don't fall in this trap
You have to identify those feelings, and talk about it ASAP! I should have warned Elie and Marc sooner. My girlfriend saw it, but we didn’t take the time to discuss it. Maybe because I didn’t know exactly why I felt like this.
As Laurence (one of our very first supporters and lovely users) recently told me: "Building a business has to be fun. You never fail, you just learn. The most important things are: live and enjoy the moment, and be healthy." And she is completely right. Don't stress yourself. Just enjoy being where you are. It will be fine 🤗
Also, I'm convinced that founders need hobbies. Actually, everyone needs it. It doesn’t matter what kind of hobby. Just focus on something else to disconnect. Your brain needs downtime. Mental breaks improve productivity, concentration, and stimulate creativity. Let your brain recharge, so that it can stay sharp. Josh, Baremetrics' founder, wrote some articles about this. I encourage you to read it.
Now, I promise you will enjoy the rest of the journey and there would be no more harsh feelings in the following 😋
Give value, be honest, and people will reward you
In November 2019, I decided to start writing a big blog post to share our journey bootstrapping RocketChart. It's the first one of this series. This was an initiation for me. I never wrote anything before. I didn’t know what to expect from it.
Here are the results of the first 3 days after publishing the blog post:
- 6,500 readers in 3 days 😨
- 54 new Beta signups in 3 days 🚀
- 14 emails and 128 LinkedIn connexions to thank me for the article and value in it 😊
- One invitation on Heroku Code[ish] podcast 🎤
- Many Business Angels offers and one $100k investment proposal 💸
- $40 of Netlify bandwidth extension 😥
Writing our first blog post, a big one
I decided to write in English, to make it available to a vast majority. As I’m not a native English speaker, I used Grammarly to help me with this. It is a really powerful tool that corrects your English sentences and spelling mistakes. The free version is enough for what I wanted to do 🤑
Here are the main guidelines I fixed: I wanted to provide as much value as I could by giving actionable insights. The goal was to encourage and help other founders or aspiring founders. Plus, it had to be authentic and transparent. Lastly, it must be super easy to read. Grammarly stats are helpful in this.
It provides many interesting stats
The article was ready in early December, after a month of writing. I thought: « Great, the hardest part is done ».
What a fool haha 🤣
First, we didn’t have any CMS (Content Management System) at that time. And it's still the case today. I literally coded the article to push it on our website. The article was 7,000 words long. It took me 2 evenings (10,5 hours) just to publish it online 🥵
If you wonder: yes, it was so painful to do it in GitHub…
We plan to connect Ghost to our Gatsby.js website. There is a simple integration between the two. To let you compare, it would have taken me 30min with Ghost. But we are still limited in tech resources. Marc and Elie are working only on nights and weekends. We decided to focus 100% on the product and not on other tech things. But, if you have to choose: start by integrating a CMS!
Then, here is the second hardest part: promotion 💥
If you’ve written a useful content but no one read it, then it's not a useful content.
Promoting the article
First, I shared it with close friends and people who might be interested. This was a great way to adjust some parts and take the temperature. Actually, some of them shared it on Twitter and LinkedIn. I didn't expect this, I was super happy! 😄
Thank you guys, it means a lot to me 🥰
The next day, I published it on HackerNews. Then I turned off my laptop and went to the grocery store to buy some stuff. 1 hour later, on my way back to home, Elie sent me this message:
We were top #2 on HackerNews 😳
For a few hours, we were between the 2nd and the 8th position. It brought a huge spike of traffic to our website. Damn. I wasn't expecting this at all! 😅
It went from 0 visitors to thousands
If you do this, you have to anticipate one thing: HackerNews' community is a bit tough. Don't take it personally. 36 comments out of 40 were to blame how we validated our SaaS idea and criticizing things like « it’s a marketing piece of content », « you lied to your first users, how can it be serious », etc.
Haters gonna hate
Actually, I feel sorry for them because they missed the true value of the article. But guess what: « On the internet, the majority remains silent » 🤐
Results we didn't expect
Many folks wrote me kind emails and friendly messages on LinkedIn because they enjoyed the read and learned from our journey. And THIS is the most rewarding part of this work. It means a lot. I'm glad our journey is inspiring and helping others. This was the ultimate goal 🔥
Thank you to all +140 people who wrote a friendly message after their reading 🤗
This article triggered many awesome discussions. Some folks even supercharged our product vision, helped me to meet the right people, and gave incredible insights from their past experiences (here you are Thomas 😊)
Then, besides getting more Beta signups, this article created many other opportunities. The 2 most unexpected are backlinks and podcasts.
A backlink is a link from one website to another. Basically, having a high Domain Authority (or Domain Rating) helps you to rank first on Google. The Authority refers to the « strength » of your website. Here come the backlinks: the only way to increase Domain Rating is to get backlinks. One virtuous thing we didn’t expect at all from this 1st article, was the number of backlinks it created: our journey has been featured on many websites and newsletters.
Also, I had the opportunity to be interviewed on Code[ish], the Heroku's podcast. It all started with a message from David, working at Heroku. He enjoyed the first article and contacted me.
Thanks a lot David 😊
In addition to the customer case study, which is good for getting quality backlinks, we were convinced our journey would be useful to their audience. So I was interviewed for their podcast series 🎙
To be transparent, here is what it looked like from the inside:
Yes, there is a dinosaur. With Camille, we named it "Littlefoot" 🦕
You can access the podcast here. I hope you will enjoy and get value from this.
Jennifer, thank you for the gift 😍 Gonna wear it this summer!
What we didn’t anticipate is that this little buzz will cost us a bit. Only $40 bucks, but still. It raises our total amount invested in RocketChart to $41,40 after 6 months 💸
I didn't optimize images and Gif, so we reached the bandwidth capacity 😤
I learned a big lesson with this first article: providing value to people through authenticity and honesty is the biggest impact you can make. And people will reward you for this.
Leveraging our Beta to improve our SaaS product
Early December 2019, Elie came to my home to deploy RocketChart for the first time. Marc was on the phone because in remote in Germany.
The funny fact was, Marc had never seen the interface for real before this moment. He just had seen the mockups on Adobe. As I explained in our first article, we divided the workload to go faster. Elie was working on the frontend and Marc on the backend. They had never connected their codes before 😵
Starting the "Beta test"
So here we are, the long-awaited moment. Click to "Deploy". Boom! Everything worked perfectly. I connected my bank account. Boom! All transactions were pulled in RocketChart in 12 seconds. I got my cash flow right in our tool. We were literally dancing in my apartment 🎉
You can't see shit on the screen, but our smile speak for it 🤪
I think it worked right the first time because Marc was extremely rigorous on our API documentation. It was clear and precise. Elie had no question about it, no mistake was possible. So the interface displayed exactly what was expected.
It's something we've learned along the way: remote team implies over-communication and precise documentation. Otherwise, you are dead ☠️
The next day, I had to select 20 beta testers among our waiting list to on-board them. The goal of this "Beta test" was to find out how to make RocketChart a must-have.
Actually, I was very embarrassed by our product. Because it did only 10% of what we promised. I guess it's a good thing for a MVP 😅 But I wanted to confront the product with our potential customers as soon as possible.
A lot of founders wanted to test RocketChart. More and more people were signing up for Beta access. We decided to make it hard for users to test RocketChart.
Yes, you read it well.
Why the fuck would we do this? First, we didn’t want to be overwhelmed by feedback and feature requests. Second, we only wanted to onboard early users who would take the time to give us real feedback. That’s why I always asked testers to jump on a 10min call with me before getting access. And many didn't want to spend that time. So imagine if they had to give us feedback 😒
For non-french, Simon asked me if he can test the product and I answered him to make a 10min call first, which we did in fact
Another insight I can give you on this point: we didn’t want a buggy product. It’s not us, and we find it unacceptable. Especially because we are dealing with financial data. We like well-shaped interfaces and Ux, do you remember? 😋 So we decided to onboard a few users. I chatted with Filipe after my first article, he highlighted this very well:
A buggy product can kill itself early
Live demos in person, sitting next to the user
I chose to make the majority of Beta demos in person. If the early user was in Paris, I tried to always be there when he used the product for the first time. It worked for 80% of the demos, the rest was via Whereby.
The goal was to continue the human and personal touch we are so attached to. We are not just freaks behind a screen. Plus, I was pretty sure I could get so much more valuable insights seeing the user testing our product. And I was right. Not only people shared awesome feedback in real-time, but I was able to detect Ux problems 🧐
Let me give you a concrete example of one Ux issue.
Once a user signs up on RocketChart, he has to connect his bank account. So he arrives on this :
Nothing astonishing here at first glance
This step is critical for us. It's our first "user activation" metric. I mean, to enjoy the power of our tool, users have to connect their bank accounts. During 2 demos, I saw early users doing 2 things at this stage:
- one opened his email inbox
- the other clicked on the settings menu
They didn’t click on « Connect now ». I thought it was clear while designing it. But it appears not being obvious. We failed at making them connecting their bank account 😱
As I was sitting next to them, I simply asked why they did that.
First of all, when people read « in only one step », they immediately think of email confirmation. That’s why he opened his inbox. Also, there was lots of info on this page: header with settings menu, title, subtitle, button, and banks' logos. The other early user missed the important button. He didn’t know what to do at this stage. Fuuuuuuuuck 🤷
I redesigned the step in the evening. Elie deployed it the next evening. And it became:
Simpler, and easier - the user can do only one thing
Now, this step is clear and straight to the point. Only one info per page. No one is lost again 🥳
The crucial thing to remember here is not the example by itself. Rather, I want to highlight the means to achieve it: sitting next to your users while they are using your product. You will learn so much this way, I guarantee you.
The second insight I can give is to go straight to the point. If you want your users to do something or click somewhere, don't give them a choice. Your mission is to guide them to the "Aha! Moment".
Let's go back to our "Beta test".
Managing feature requests
I've accumulated many feature requests thanks to these live demos. For each feature, we wanted to deeply understand our users' needs. That's why we dug for the desired outcome. Why the user needs this. What he is trying to achieve 🤔
For each demo, I brought my little notebook
We were able to write the most accurate user stories. Those stories are great to define your product with clarity. You don't use technical terms and it encourages the tech team to think from a user's point of view.
We use this classic format to write our user stories:
"As [type of user] I want to [do something] so that [desired outcomes]"
After 20 live demos, we gathered +65 feature requests. Ouch! It was awesome. But it was clear our Beta was failing at delivering enough value 😞
The biggest question was: how to organize our roadmap to reach a worth paying product?
As we didn’t narrow down our targetted niche at the beginning, we had feedback from mainly 4 customer profiles:
- Tech startups founders
- Digital agency & directors
- Hardware startups founders
- Retail store and restaurant owners
Needs and desired outcomes are different from a type of business to another. For example, a startup founder needs to know its cash runway. But a digital agency director doesn’t. Instead, he needs to get an expected cash flow projection based on his invoices, to capture the day of the month he would be in the red zone. You can’t satisfy everyone with a unique solution 😩
To plan our roadmap, we focussed first on features requested by each of all 4 customer segments. Features were tagged with the customer type. Thus we had the list of the most wanted features regarding customer categories.
This was what our product management spreadsheet looked like 😅
Some may argue we should have focussed on a specific persona. But we didn't know who will benefit the most from RocketChart at that moment. So we did this to make our product appealing to the largest mass of potential customers. And actually, the basis regarding cash flow is the same whatever the business types 🙃
Then, to define the first paying release we selected the most requested features. As simple as that. I'm convinced being close to your users helps you to feel and trust your guts regarding what to build. It's a bit weird, but I assure you that you just feel it deep inside. You don't need math.
Reaching 10 users, planned our official launch, and then … Covid 19
We failed at delivering enough value to our early adopters. But we knew what to work on. So we stopped the Beta early January to focus on building the new product. I had to completely redesign RocketChart to match with the new requirements 🤓
This is the "new" RocketChart 😍
Our first RocketWeekend
To kick off the work on the new product, we decided to make our very first RocketWeekend early January. Elie, Marc and I met together in Germany, where Marc is living. We have never worked physically together before. It was unprepared and spontaneous. Still, it was one of our best moves since the beginning 🚀
Not only Elie and Marc did awesome work on the product, but it was a great way to align our vision around it. It's critical to make sure everyone in the team knows why features are built and in which context. Also, we implemented our new product management process to increase efficiency.
Also, it felt good to spend some time together doing other things than RocketCharting.
Marc showed us his new climbing skills 😵
This RocketWeekend confirmed one thing: we share the same expectation in life. We are completely aligned with our goals, and the three of us are moving in symbiosis.
In the following weeks, Elie and Marc worked really hard nights and weekends to build the product. Even though we were building the product based on users' insights, I was like: “Are we moving in the right path? Do early adopters will pay for this version?” 🤔
These hypotheses needed confirmation. I sent an email to each beta tester, asking for feedback on the new mockups.
This is the email I send to ask for feedback
I jumped on many calls and it was awesome! Founders finally loved what we were building and were ok to pay for it. They saw the product as a true pain-killer. Again, getting feedback as fast as possible, even without a product, was crucial and motivating.
Launching with our very first official early users
We worked so hard to release the product mid-February. We were really tired. But we continued to push forward each night and each weekend. We did a second RocketWeekend to close this chapter in February. We met at our Mom's place this time 😊
We took the photo before kicking off the weekend
We deployed the first official version of RocketChart on Tuesday evening, the 18th of February. We will remember this date for sure! 🎉
The next day, we onboarded our very first official user. Elie even took a day off from his "normal" job to be there! It was a great opportunity for him to talk to a real user. I think it's key to let the tech team talk and be in front of users for real. It helps developers to get a solid understanding of the product. And it boosts their perception of feature requests, bugs and Ux interaction. Plus, talking to our real user boosts and motivates Elie and Marc like never before: they activated the "WarMachine" mode ☄️
I like to call Elie and Marc my War Machines - they are both geniuses 🧞
They had to activate this mode for 2 reasons. First, users reported blocking bugs. Second, after getting 6 users onboard, we discovered one terrible problem: our backend wasn't scalable at all. The more the users, transactions, and categories, the more the app was laggy. So after getting a few official users, we stopped. We had to optimize the code 😩
If you have a good product but it's laggy, it's not a good product
Elie and Marc worked each night, for 3 weeks non-stop, to redo the backend almost from scratch. Tough work paid off. Our app is now very fast. And we were ready to onboard more users 🔥
During this time, we officially created the company: RocketChart SARL. We didn't create it earlier because we wanted to focus 100% on the product. Plus, why losing time creating a company and doing paperwork if you don't have customers? 🤔 We wanted our early customers to fund the creation (it costs around €400). It would have been beautiful. But we had to do it a bit before because we needed to sign a contract with the banking API.
Public launch of our product
Mid-march we had 10 users. By the end of the month, we planned to launch publicly and start collecting payments from users. We were so excited. 9 months of work would have finally paid off. We had a big launch plan. Everything was prepared. And then ...
Covid 19 ☠️
Public launch postponed...
Public launch postponed...
In the meantime, here are the 4 things I wish I had known while starting this company.
4 key takeaways
Early adopters are the key. Cherish them.
It's vital to keep talking to your early adopters. I mean, talking to them for real and see how they interact with your product for real, sitting next to them. If you don't, you risk investing your very limited resources and time on costly useless things. Such as shipping features that won't be used. Simply surveying people through online surveys will never highlight the deepest needs and barriers to your product's adoption. Preserving sincere relationships with early supporters is crucial to create the right product. The next features to build are gonna burn inside you. You will feel it 😉
Laurence helped us almost every week by testing and giving us feedback. Even taking the time to send me bugs on video. Thank you so much 🥰
Without Aurélien, Laurence, Benoît, Maxime, Esteban, Simon and a few other early adopters, we wouldn't be there. They are helping us to shape the best-in-class cash flow management and forecasting software. Giving us the strength to pursue, and the purpose to keep building RocketChart.
Confront your product. Go talk to people. Reduce uncertainty.
Don't make the classic mistake of working locked in your garage. 100% sure you'll go in the wrong direction. You are not building a product for yourself. You are building a product for people. So go talk to those people. Everything is just a hypothesis until you test it. Keep this postulate in mind: you know nothing 😓
Unlike Jon Snow, your users and early adopters know everything. So get feedback from them as often as you can. You don't care if you are ashamed of what you have to show. Even if it's not completely testable, let early users test it. Even if it's only mockups, show these mockups as I did in January. You have to narrow down your scope of uncertainty.
Stop selling. Start giving value. Stay true with yourself.
Remember this salesman who called you to sell you shit? I bet you didn't. Indeed, urging people to buy doesn't work. People are going to reject you for this, and going to forget you ever existed. Instead, prove to people you are worth remembering. Give them value. Write useful articles. Call them for their birthday. Teach them how to succeed. Help them to solve a particular problem. Stand out from the crowd, be unique and make people remembering you. Just look at this incredible cold email I received 😲. I mean it, really. The guy gave us awesome advice on our website copy.
I guess providing value works: I just recommend you Dylan because he gave me value
I'm convinced staying honest and loyal to your convictions is crucial. Don't be someone else. Be true, and assume your values. People feel fake persons. So just do what you like. If you love selling, then sell. If you love engaging with people, then engage. If you love writing articles, then write. If you do something you love, then you will do it the right way and people will feel it.
Launching a company is tough. Keep it fun then.
Bootstrapping a business is fucking hard. I don't believe in people saying they are working 5 or 6 hours a day, from Monday to Friday, and succeed. You have to work way more than that. Consequently, your business will affect relationships with friends, family, and even your girlfriend. You have to be cautious about your spendings. It means cutting down on drinks with friends, activities with your girlfriend, and time with your family. It's just one example. Yes, your business should not impact your personal life. But it is just impossible. I guarantee you.
9 months of work to get there, from July 2019 to April 2020.
After reflection, it hasn't been easy. Quite the opposite in fact 😅 But it was fun. And we've learned a lot about ourselves. We've met extraordinary people, inspiring ones, and made new awesome friends.
We are the right team. We have the product. We have a strong overarching vision. We have lovely early adopters, people supporting us. Now, our next goal is to reach ramen profitability by the end of 2020. It means €12,000 in monthly recurring revenue. To pay the 3 of us and live thanks to our lovely and loyal customers.
Stay tuned - the journey is gonna be legendary 🔥
If you are still with me after this 24min lecture and 6,000 words, I'd like to thank you. I hope you've enjoyed the reading and learned a few things 🙂
For those who have already bootstrapped a company, I'd love to learn from you: let chat on LinkedIn. For those who strive to start your business, I hope you've got some inspiration and actionable insights. For those who arrived here by a mystic or divine intervention, I hope you enjoyed this journey and I'll be happy to answer questions if you have some. Let chat on LinkedIn! 🤗
Wish you the best my beloved readers,
➡️ Go to part 3