Getting started with data collection and Analytics - Alex Kulbei
Using data well can have a huge impact on your bottom line. But with the increasing numbers of specialized products we're using to run our businesses, it's not easy to collect and keep track of all that data.
We did some research and found that a SaaS company with around 50-100 employees, depending on its geographical location, can spend anywhere between $200k and $500k every year supporting its data efforts—even though it's not a core function of their business.
I've been through lots of ups and downs collecting data and building analytics teams during my career. And that's why I co-founded Probe, where we help companies connect their data and automate their monthly business reviews. It's with this experience that I want to share some fundamentals of data analytics that many companies miss.
Collecting complex data? Here's how to automate your data collection.
When to start thinking about data collection and analytics
The short answer: now. You should start measuring your activities as early as possible. Whether you have 1, 10, or 100 customers, the products you're using are already collecting data about your business. Invoicing software has all your billing details, your internal database has all the trials, your CRM stores interactions you had with potential customers. The longer you wait to collect this data in a way that makes sense, the less useful these will be as they scale.
So really, it's never too early. If you try to raise funds, you will be asked about historical data, six months or a year back. And if you haven't thought about it, you'll have to scramble to get the data, pull together a not-well-thought-out spreadsheet—it's not a good look.
Be clear on what you want to measure
It's much easier to say "I want to measure everything and be able to answer any questions with data" than it is to narrow things down to two or three key performance indicators (KPIs) that will measure your success given the stage of your business. That's why, more often than not, companies end up building solutions that are much too broad. They'll invest heavily in in-house data collection, use tools that require a lot of expertise, and spend a ton of money doing it all.
So: think hard about the metrics that drive all of your actions. Is it product adoption? Number of demo meetings? Your new MRR goal? Once you figure that out, it will be easier for you to build an effective solution with low effort.
It's also easier to make decisions and correlate data when you're measuring a limited number of things. If you have too many metrics, it's a sign that you didn't have a difficult discussion with your team about what really matters.
And it's not just about knowing what you want to analyze—you also need to be clear on what you want to collect in the first place. At a previous company, we collected every little interaction a user had with our product. It ended up becoming so complicated that even our developers weren't fluent with the system. And for most of the time, this data just increased our Amazon Web Services bills while being very rarely used.
6 things to do early on with data collection and analysis
Once you're clear on what you want to measure, make sure you do the following things to make it easier to collect and analyze your data.
1. Decide on a unique ID that will identify each customer
You'll need a unique identifier for every customer's account created within your system. Why? Because there will be a moment when you'll want to match the same customer record between two different systems—say, your CRM and your billing software. There's no reliable attribute apart from a unique ID that will give you good results. People will register with one email for your trial, will use another one in payment details, and so on. And using email, business address, account number, or anything like that is going to lead to poor data quality. Forget it.
The best candidate for such an identifier is a unique ID generated by your system each time someone registers an account. Chances are that you already have such an ID inside your database. If not, you'll need to add it.
2. Include the unique ID in every app you use
Now that you have your unique ID, you have to make sure that you're passing this ID to each system you're using. Let's say you use HubSpot as your CRM, Stripe for billing, and Intercom for communicating with customers.
Each of these systems allows you to add a custom attribute to the customer record. Make sure that each time you create a new customer record in these systems, you're passing your unique ID along with other details. That way, there's at least one attribute that can be reliably used to connect your data together.
Note: If you're not using a billing system that allows you to easily connect your customer records to the invoices you've issued, you need to make sure that you add your unique customer ID to the invoice itself. You'll also want to include the name of the product or service the customer bought and the service start date and end date, if applicable. These attributes will save you a ton of time when you need to understand who paid for what and when.
3. Implement a simple marketing attribution model
It's important to understand how different customers find your product or service. We wrote a separate blog post on how to build a simple solution for marketing attribution, so take a look. The main takeaway: your attribution model shouldn't be overly complex.
4. Be organized, and have a simple structure to store your data
Introduce the simplest data structure possible at the very beginning to get your financial metrics covered. There are a lot of templates out there, but if you're in software as a service (SaaS), you'll just need four attributes: unique customer ID, service start date, service end date (can be empty if you renew automatically), and total value of subscriptions.
I know many companies are forced to use various different billing systems at the same time. The important thing is to stay organized, introduce one simple format, and adjust your data to this format. This will make plotting charts and working this dataset way easier.
5. Know your source of truth
If two systems show two different answers, what's your source of truth? For example, if you need a reliable answer on how much customer X is paying you, which system do you go to? Is it your CRM or your accounting software or your billing and invoice app or the spreadsheet you're filling in manually?
It really doesn't matter which you choose, but you need to be sure everyone understands the source of truth. That way, when you have any doubt, you always know where to look for the truest answer.
And if you do find discrepancies, address them as quickly as possible: not only will you be able to better trust your numbers, but it will also be easier to apply more advanced machine learning models. So make sure your data are clean, and resolve issues as soon as they arise.
A note on using spreadsheets: Spreadsheets are fine when you're small. But once you hit about 100 customers, it starts getting messy. Even upgrading to a database can make a huge difference: you'll have better logs of what changed and when, and it offers more options for segmentation.
6. Use automation
Use tools like Zapier to help you push your unique identifier between different systems. When you only have a couple dozen customers, it seems easy enough to copy/paste, but automated data collection systems will remove repetitive work while also eliminating the potential for human error.
Zapier lets you automatically send information from one app to another, helping you reduce manual tasks. Learn more about how Zapier works.
As a founder, you're so close to the business that it can feel like you have a full understanding of what's going on with your data. But remember that you have a team working with you that doesn't have that visibility—and in order to scale, you need a system that anyone can use and understand.