Remember how I acquired Zipchat AI back in January? It’s already been 2 months and I can say - I’m up to speed on the day-to-day life of an entrepreneur.
Entrepreneurship is like burpees - it doesn’t get easier!
The constant bouncing between “OMG, this is going to be huge” and mini-WFIOs ( we’re fucked it’s over ) is something that I hadn’t felt in a while.
Jokes aside, it’s challenging, but I LOVE IT ❤️. I go to bed on Sundays with a spark, excited about the next work week!
Also, things seem to be going more “well”, than “unwell” which is the best you can hope for when running a startup.
What I found at Zipchat?
The good - a capable team
I’m super happy with the co-founders I “inherited” in the face of Luca and Carlo. They are hard workers, bring the fire every day 🔥, and seem to know what they are doing ( as much as you can know when trying to grow a startup ).
We also have a couple of contractors working with us, more notably Hunzala - my dev sidekick who also has skills and can get things done.
The bad
Even with a capable team, Zipchat is a 10-month startup that’s already servicing 200+ business customers. Growth like that happens only one way: by cutting corners.
Starting a company is like jumping off a cliff and assembling a plane on the way down. - Reid Hoffman
That’s OK! I believe the team executed flawlessly - they got things off the ground by building for tomorrow. It’s just that we’re now moving to a more mature stage and we need to grow as a company and as a product.
Half-baked product
I knew the product wasn’t perfect and indeed, we need to improve our product by a long shot. We’re missing functionalities, our chat responses are sometimes bad, and we have many bugs.
What took me by surprise was the complexity of building an AI chatbot
I had the assumption that Zipchat is just a simple “ChatGPT” wrapper, so it’s going to behave like ChatGPT behaves, just for a specific store
Turns out, that building an AI chat solution like Zipchat, which is supposed to work out of the box for any store, is much harder than I originally thought.
On one side, that gives me hope that it’s not as easy to replicate, but we’re still not perfect at our core task - being an AI chat.
No visibility
We had no idea what our Monthly Recurring Revenue ( MRR ) is
We had no idea where our customers were coming from
No process
No common knowledgebase - random docs everywhere
Communication happened via WhatsApp, Slack, email, etc. Everyone is different.
No test automation, monkey-patching, and bad dev patterns.
The ugly - Performance issues
The combination of building for tomorrow and the fast growth of Zipchat manifested in the worst possible way - performance issues and downtimes.
Literally on the first week of my onboarding, the database started crashing and I had to come in and figure out how to fix things ASAP.
We still face performance issues today and we spend more on servers than we should because of it. Yet, we have to pick our battles. And me being the “most senior” dev in the company doesn’t help, as I’m not “senior” in any sense of the word.
What have we achieved in the past 2 months?
Onboarding myself
I now know the product and how to get around it effectively
I now know the majority of the codebase
We’re getting used to working together as a team
Structure
We now use Slack ( big shocker I know 😄 ) with some channel structure and automatic notifications
We now use Notion as a single source of truth for anything ( almost ) that isn’t chat
We now use dev automation like automatic testing and AI-generated code reviews
We’re trying to introduce some kind of tempo by making plans, setting quarterly / weekly objectives, and reporting on our progress
Visibility
We now know what our MRR is 😱 ( big shoutout to Mantle )
We now have some visibility on where our customers are coming from 😱
We now collect feedback on our chat replies
None of this is “innovative”, but rather mandatory pieces of information that we need to make adequate product or growth decisions.
Performance & Stability
We’ve shipped multiple performance updates on our webhooks, crawling, and other sections of our app to decrease the load on our servers and DB.
Also a ton of bugfixes 🐛
Multiple product upgrades
Better crawling
We’ve drastically improved our web crawling for non-Shopify stores, by introducing a variety of upgrades for efficiency, sitemap parsing, and anti-crawling blockers
Other features
Suggestion messages
Spam filters
Better customer support tools
Growth
We’ve grown our MRR by 25%
We’ve reached $20k MRR for the first time in Zipchat history 🎉
What are the next steps?
Growth
When it comes to growth, we’re doing a little bit of everything: app store optimization, marketing, outbound sales, going to conferences, and it seems to be working somewhat.
We’ve managed to hit $20k MRR with this approach, however, the more you grow, the higher churn you will have so you need to make up the lost customers and add new ones, meaning you need to exponentially scale your growth channels.
We currently don’t have a good growth flywheel to scale:
Our outbound sales seem to be working, but numbers are not that good to hire more people and scale it.
Our marketing efforts produce results but there’s no single thing to push the pedal on.
The app store brings installs, but competition increases and we’re already ranking well.
We need to start transitioning from things “that don’t scale” to things that “scale” to hit our EoY goal of $60k MRR.
Product
Core service
Make our replies better
Make our interface easier to use
Repeat 🔁
Marketing automation
Most companies look at AI chats as a way to decrease customer support costs, but at Zipchat we see things differently. When a customer comes browsing to a website and has questions about a brand, they’re no longer a random analytics number - they are a real customer, with real needs.
If they decide to share their contacts, brands can access a whole universe of possibilities to market to those customers that were not possible before.
We’re already doing some experiments in that regard, and if they prove successful, Zipchat can become much more valuable than it is right now.
Customer insights
Imagine if you could talk to every single one of your customers? How much more would you know about their needs, how to market to them, where your product’s shortcomings are, etc.
Zipchat is already talking to a big portion of your customers, so why not analyze those conversations and see what it comes up with? That’s another experiment we’ll be working on.
Lessons learned for next acquisitions
Zipchat’s acquisition already had me reconsider some of my assumptions for the Boring Apps masterplan. Here are the changes that I’ve made:
Target companies that swim in Blue Oceans
Even though there are tons of similar solutions to Zipchat, less than 1/5 of our potential customers have tried an alternative. This makes me super optimistic because we just need to prove AI chats are valuable, instead of trying to prove we’re the best, most cost-efficient solution on the market.
Comparing that to my experience with Vanga AI ( where every potential customer had already tried 10+ competitors ), I can say with confidence - blue oceans are much easier to grow in.
A good hack to know if a company is in a blue ocean is to try to answer the “Why now” question. Read more on blue oceans and why now in my article:
Focus on growth potential, not on valuation
There’s a quote by Warren Buffet:
It's far better to buy a wonderful company at a fair price than a fair company at a wonderful price. - Warren Buffet
I originally started “Boring Apps” with the idea of focusing on “fair” companies at wonderful prices, but looking at the ROI numbers, I see Buffet’s point.
Imagine the following scenarios
Company A
$100k ARR
$300k purchase price ( 3x ARR )
Can grow 15% YoY
Company B
$75k ARR
$300k purchase price ( 4x ARR )
Can grow 50% YoY
If the growth potential is fulfilled, and you hold the company for 3 years, then sell at the same multiples, you’ll end up with:
Company A - $152k ARR - $456k sell price - 52% ROI
Company B - $253k ARR
Sell at 3x ARR - $759k - 250% ROI
Sell at 4x ARR - $1M - 333% ROI
Of course, by remaining in my weight class. There are different investment strategies out there. For example, VCs and angel investors take this logic to an extreme, with their investments aiming to bring 100x+ ROI.
Don’t use MRR as a valuation multiple
MRR is a tricky metric, no matter how well you measure it - it’s never entirely accurate.
One of the hardest things in the Zipchat deal was to estimate the MRR correctly ( as mentioned above, they didn’t have good tools to do so ), so we ended up arguing and the MMR that we used as a multiple was a bit higher than reality ( like 15% )
I had another deal that fell through in December where we ran into the same problem.
I’m super happy with the deal, we’ve already made up that difference and above, but for the next deals, I would use historical revenue as a basis.
For example: last month’s revenue x 12
Conclusion
Things are going well for Zipchat, we’re fixing issues and growing at a good rate. Hopefully, things will continue to go our way until the next update 🤞