Lav Crnobrnja built a software development agency and ran into a problem as it scaled. So, his team built a solution and launched it publicly. Now, Vacation Tracker is bringing in $3M ARR.
Here's Lav on how he did it. 👇
I hold diplomas in both finance and engineering. I’ve been an entrepreneur since 2009.
My first business focused on cloud computing. After a few years, I pivoted to mobile apps, where I met my current business partner, Slobodan. Together, we built Cloud Horizon, a software development agency, for about ten years. But eventually, we decided to build our own products.
Vacation Tracker emerged from that transition, addressing a problem we had in Cloud Horizon. It has grown into a real SaaS business over the years. The company has been growing steadily since 2018, and we’re now generating over $3 million in ARR.
My cofounder and I still spend most of our time on Vacation Tracker. Recently, however, we've also been exploring AI agents. We have a few projects in the lab, and we recently launched Competitor Tracker. It's very different building a startup now than it was in 2018. And honestly, it’s a really exciting time to build.
We were motivated to start Vacation Tracker because of an internal problem at Cloud Horizon.
Like many companies, we initially tracked vacations, sick days, maternity leave, and other absences in an Excel file. That worked fine when we were small, but once we grew beyond about 15 people, it became painful. Multiple people updated the file, people needed to know who was out of the office, managers needed to approve time off, and the whole thing became super annoying.
Cloud Horizon was a software development agency. We built products for other people. So, we looked at the problem and said, “Well, we build software. Why don’t we just build our own little tracker?” Few good vacation tracking products existed on the market at the time, and larger HR systems were too expensive for our needs. So we built something for ourselves.
To our great astonishment, we later discovered many other companies faced the same problem. This eventually turned Vacation Tracker from an internal tool into our main business today.
We didn't do a lot of fancy validation. We built a crude version of Vacation Tracker during an internal Cloud Horizon hackathon and left a landing page online. The landing page collected signups for 18 months.
Then one day, someone from the waitlist emailed me, asking when we would launch. This guy went through a lot of trouble to find out who I was and how to reach me.
That was a strong signal for us, in addition to the pain we felt managing leaves at Cloud Horizon. So when the first opportunity arose, and we had a developer available from the consulting business, we put him to work on Vacation Tracker.
The initial product was very crude. It only supported vacations. There was no sick leave, no maternity leave, no custom leave types, and none of the more advanced features we have today. It worked only with Slack. A user could request a vacation, an approver could approve it, and Vacation Tracker would send notifications to Slack so people knew who was out of the office that week. Other than basic user management, login, and signup, that was the whole product.
We had about 60 people on the waitlist when we launched. And when we sent the first invitation, around 20 of them signed up. We gave those early users six months free in exchange for feedback.
Customers started asking for calendar integrations, more leave types, Excel exports, and all kinds of things like that. That feedback became our roadmap.
As far as the stack, Vacation Tracker uses AWS serverless for the backend, so we don’t manage servers for the application.
We also use Hugo for the website, which runs on a CDN and makes the website extremely fast.
Outside of that, I don’t dig into the details much. I trust my partner completely. We haven’t had any major downtime in the last eight years, since we started the company. So, whatever Slobodan and the technical team are doing, they’re doing it well.
Vacation Tracker is a SaaS product. We currently have two plans. The Core plan is $2 per user per month, and the Complete plan is $4 per user per month. Both plans have a 25-user minimum. We intentionally set this minimum to target companies of a certain size.
We didn’t start at these prices. Initially, we only had one plan, the Core plan, at $1 per user per month with the same 25-user minimum. Over time, we added the Complete plan. It started at $2, then we increased it to $3, and more recently we increased it to $4. We also recently increased the Core plan to $2.
One way we expand revenue is by periodically increasing prices. As the product grows and we add more value, customers are more willing to pay a higher price.
The other way is through customer expansion. A company might start with a certain number of users; over time, they add more users or teams. We've seen several customers where one team started using Vacation Tracker. Another team within the same company saw and liked it, leading to internal product expansion.
In the beginning, we didn’t have a big budget to hire expensive marketers.
Instead of building a large marketing team immediately, we hired Toggl's former CMO. She created a plan for our first year or two, and then we hired a more junior marketer to execute the plan.
The plan focused heavily on content. We wrote many blog posts, created many landing pages, and developed content and backlinks. We still follow much of that playbook today. We've expanded it considerably over the years, but content remains one of our main signup drivers.
We create quality content relevant and interesting to our target audience. This attracts many customers through organic search. The landing pages helped us target specific use cases and audiences. Backlinks helped build authority. App marketplaces were crucial because Vacation Tracker worked directly with tools like Slack and later Microsoft Teams and Google Workspace.
We've also explored other avenues. We've tried paid ads, Product Hunt, and partnerships with other companies. Over time, however, content has proven our best channel. That's why we still produce much content today, now with a larger team.
Our first big challenge was transitioning from a service business to a product business. Cloud Horizon operated purely as a service business. We built products for other people. With Vacation Tracker, we had to build, market, sell, and support our own product.
That required a different mindset. It changed how we thought about marketing, sales, product development, support, and the whole business.
Another challenge was bootstrapping. We never raised VC money; that was by design. We wanted to control our own destiny. But bootstrapping also limits how many things you can do at once.
If you have VC money, you can throw money around at all kinds of ideas, both good and bad. When spending your own money, you have to be much more disciplined.
Initially, Vacation Tracker received some help from Cloud Horizon, but that stopped after the first year or two. After that, we only used the money Vacation Tracker earned. That forced us to be very diligent about spending money, which was difficult, but probably good for us.
Mentorship has been particularly helpful for me. I've had many mentors over the years. I'm always seeking out great people for advice.
I am here largely because of the help we received from those mentors. They were gracious with their time, helped us think through problems, and advised us on how to grow the business. We’ve been very lucky. I think mentorship is super important, which is why I now mentor younger entrepreneurs.
My biggest advice: Don’t look for the magic formula. Don’t look for the five steps to success. There is no silver bullet, and you'll waste your time if you try to find one. The people selling you that on YouTube, Instagram, Twitter, or wherever else mostly sell bullshit. Reading all the books and watching all the videos will not make you successful. Trying things, learning as you go, and making adjustments will.
Brian Armstrong from Coinbase's quote always comes to mind when I discuss this. He said, "Action produces information." I completely agree. I've followed this throughout my career, even before I knew how to explain it. I always want to jump off a cliff and build the plane on the way down. And if I fail, fine, I’ll crash into the ground. Then I’ll go back up, jump again, and try to build the plane again.
That is one of the biggest differences between successful and unsuccessful people. Successful people go, figure things out, make mistakes, learn from them, adapt, and keep going. Everyone else looks for the easy path.
If you are not afraid of failure and stay resilient, you will eventually get there.
I recently stepped down as CEO of Vacation Tracker because the job was getting beyond me. I’m a hacker at heart. I like to tinker, and I enjoy chaotic environments. Vacation Tracker is growing bigger, more organized, and more structured. I’m not the right person to lead the company through that next stage as CEO.
We now have a new CEO who is much more qualified for that job than I am. I’m now in the COO and CFO roles, and I’m enjoying that much more. It also gives me more time to play with AI.
My first goal is to keep growing Vacation Tracker. My partner and I are still actively involved in the business, and we’re working with our new CEO to accelerate growth.
The second goal is to keep experimenting with AI tools and AI agents. Competitor Tracker is one of those experiments.
You can visit Vacation Tracker and Competitor Tracker. You can also find me on Twitter and Substack, where I periodically publish articles about what we are learning regarding AI, company building, SaaS, and technology.
Leave a Comment