The Open Startup movement is growing in popularity, with many companies jumping on-board by operating in the open and sharing their statistics publicly. This is often done on dedicated page with various charts and numbers showing anything from revenue and users, to page views and losses.

At Leave Me Alone we are proud to be an Open Startup and share all of our metrics on our open page. We get a lot of questions about how we made this page so we decided to write a blog post about it!

Our open page is completely custom but it is pretty simple. This is a high level overview of how we have put it together. If you would like us to write an in depth code tutorial then please let us know!

But first, we gotta record the stats

To call ourselves an “Open Startup” the only stat we really need to share is revenue, but we actually share a whole range of statistics because they are actually interesting for us to see - and we hope you find them interesting too!

Our open stats include; daily and monthly revenue, number of sales, expenses, new users, type of email provider, total emails processed, the number of subscription emails we have seen, and much more. When we launched Leave Me Alone we only showed a small number of these but we started collecting most of them from the beginning and slowly added them onto the page.

We record counts in three ways;

  1. Total values for the entire lifetime of the app. E.g. When a new user signs up we increment the "total users" number.
  2. Monthly values. For instance at the end of each month we record how much our monthly recurring revenue was at the end of that month so that we can show our MRR growth on a graph.
  3. Daily values. At the end of each day we record the number of events that happened that day so that we can show them on our daily graphs.
This is how the stats look in our database for a specific day

To record the daily and monthly stats we use an automated scheduler (called a cron job) to calculate the values daily/monthly and save those for later use.

Now we’re talkin’

We show almost all of our stats on the open page. We also use a subset of them on our landing pages for social proof, such as the total number of users and emails they have unsubscribed from under the main signup button on the homepage.

This helps new visitors see that we already have a large number of users, who have successfully unsubscribed from hundreds of thousands of emails. In marketing terms this is useful in order to create a fear of missing out (FOMO) for the visitor - other people are using this, so I should sign-up and use it too!

On our open page itself, we fetch all of the historical daily and monthly data and manipulate it to show various stats.

We have a lot of month on month (MoM) stat boxes calculated like so:

growthRate = (lastMonth - twoMonthsAgo) / twoMonthAgo

We then show the total number of last month's value and what percentage increase or decrease it was compared to the month before.

There are several line charts which are just the values for each day of the month. This one shows the total number of emails our customers have unsubscribed from each day.

There is one pie chart that compares the type of unsubscribes performed. When you click unsubscribe we don’t have access to the content of your emails, but we do have a link or email address we can use to unsubscribe you. If there is a link then we follow it, otherwise we send an email on your behalf to the mailing lists unsubscribe address. We click more links, but it's pretty close!

Finally, we have a bar chart showing our monthly profit. Profit is calculated like this:

profit = revenue - expenses - tree donations

What is "tree donations" you ask? Well, unsubscribing from emails actually reduces your carbon footprint! We have a section that shows the total number of trees we have planted from customer donations and also the amount of carbon offset from unsubscribing. These are compared to some common activities like taking a flight to make the information easier to digest.

We are completely open about everything so we also show our expenses. This information is powered by Airtable. If you haven’t heard of it, then it’s like Google Sheets but on steroids! We use Airtable for a bunch of stuff like this. We track our expenses in an Airtable spreadsheet and then we import it onto our open page. This allows us to make changes to our expenses and add new ones each month without having to change the code.


That’s all there is to it! For any developers reading this, the website is built using Gatsby and React, the charts are Chart.js, and the layout is all CSS Grid.

We take payments with Stripe so we could have used their API for the revenue, but we decided to record all of our stats ourselves to be in total control of the data we were showing. This means we also listen to Stripe events for refunds and churn, and deduct them from our stats too.

FAQs

How does Leave Me Alone share its company metrics publicly?

Leave Me Alone shares its company metrics publicly on an open page that includes daily, monthly, and lifetime data, such as revenue, number of users, and total emails unsubscribed. The data is displayed using charts and graphs, with key stats like Monthly Recurring Revenue (MRR) and profit.

What metrics does Leave Me Alone track and share on their open page?

Leave Me Alone tracks metrics like daily and monthly revenue, user signups, subscription emails processed, and profits. These metrics are displayed on their open page, along with monthly growth rates and charts that visualize the data.

How does Leave Me Alone track its expenses and display them publicly?

Leave Me Alone uses Airtable to track its expenses, which are imported into their open page for transparency. This allows them to update and manage their expenses without changing the website's code, ensuring the data is always up-to-date.

What tools does Leave Me Alone use to display company metrics and stats?

Leave Me Alone uses tools like Gatsby and React to build their website, Chart.js to create interactive charts, and Airtable for expense tracking. They also track revenue through Stripe's API while manually recording all stats to maintain control over their data.

How does Leave Me Alone calculate and display its monthly profit?

Leave Me Alone calculates monthly profit by subtracting expenses and tree donations from their revenue. They also display the number of trees planted from customer donations and the carbon offset from unsubscribing, providing a transparent view of their business impact.


I hope this has given you some ideas for your own open page!

As always, you can see all of our stats on our open page!

Thanks for reading.