Every SaaS business gets to a point where they have to prioritize the development of their next features and decide what they’re going to be focusing on in the short term.
In many cases it used to take months from when a problem was identified to implement a solution. Not anymore.
Meet John. He is a growth hacker that manages the growth of a new to-do app.
John knows there are many other to-do apps out there, but he also knows that people still struggle when it comes to managing their time.
He wants to build an app that will make people better at managing their time.
John already has a good chunk of users interacting with his app each day, but he notices that some users suddenly stop using the app after some time.
At first he begins checking individual accounts of inactive users and he notices that many of them have lots of unfinished tasks.
Why is this happening?
John begins to wonder what could be influencing his users’ behavior this way
Being an astute business man, he starts thinking about the possibilities:
- Do short tasks get completed more often than long ones?
- What are the exact words people use for tasks?
- Do tasks containing verbs get completed more often than those containing nouns?
- How long does it take for a task to be marked as complete?
- What is the impact of word count and verbs versus nouns on the rate of completion?
- How many words does a task have when it’s created?
All great questions, so what can John do to get the answers right now?
John does not have the data required in his web analytics tool to answer all these questions so he would need to set up custom tracking for the actions of his users.
Adding Google Tag Manager is as easy as adding Google Analytics or any other tracking tool to the site.
Just to make sure he doesn’t skip a step, John also quickly looks over a tutorial showing him how to do this.
John pastes the Google Tag Manager code in the header or footer of his website.
John adds Custom HTML tag to Google Tag Manager
The code powering Google Tag Manager is on the same page as the rest of the code running the app which means that it has access to it and it can “read” it.
A freelancer doesn’t even need access to John application’s code or the developer environment.
They can build everything on their computer and send the code to John. He would then simply copy and paste their code into Google Tag Manager
Trigger code at the right time
Once John has the code in place, the next step is to make sure that the data he is tracking is sent to the web analytics tool of his choice.
For John’s basic to-do list app, this would be whenever a user adds a new task, or completes a task.
Here’s how this might look:
To do all this, John doesn’t need any help from his development team.
His next task is to analyze the data, look for patterns and, based on what he learns, guide users to better define their tasks.
John learned that people that post generic tasks are more likely to stop using his app. Being a growth hacker, he decides to try and help users define better tasks that are easier for them to complete.
It’s time for John to involve the development team to build a system that allows him to serve custom messages to users and also track their performance.
Data Layer to the rescue
A Data Layer is “a data structure for storing, processing and passing information about the context it exists in” and is a variable which the development team can use in order to include as much information as you need from your website.
The Data Layer can include everything from what the visitors do on the website, to all the details of the page a visitor is on.
It’s important to keep in mind that you will only be able to track the data starting from the moment when the Data Layer has been implemented, meaning that you will have no frame of reference for what your users were doing previously.
Here’s a great resource explaining how you can quickly set up a Data Layer using Google Tag Manager: Unlock the Data Layer: A Non-Developer’s Guide to Google Tag Manager
With the data layer in place, John is in full control over the process of helping users define better tasks. But how does John know how to improve each task?
Time for some historical word analysis. The database to the rescue.
Export data from the database and analyze it.
John asks the development team to export all the tasks ever completed and the time it took to complete them so he can analyze it.
Although this is a good solution, it does require some advanced Excel skills in order to dig through the data and find out what’s relevant for you.
Luckily, John used these tutorials not long ago so he has no problems with giving it a try.
This is a manual process and, as such, will probably prove to be a little time consuming.
However, the big advantage to this method is that it is retroactive. It allows you to look through all of the data and make best use of it.
John now has the data he needs to help users set better tasks. He decides to email them a guide on how to set the perfect task. He also uses this data in his automatic system to help users define tasks.
Be like John!
Every app out there has something that makes it unique and differentiates it from its competitors.
It’s that something that needs to be tracked and continuously improved in order to become even better but here’s the thing … you won’t be able to do that with default tracking codes.
Default tracking codes are for default companies. Don’t be one of them. To get to the gold you’re going to have to get your hands dirty.
There is more than one way to get the data you need, both with and without the support of your development team.
Let us know how fast were you able to collect it.