Hey Product Hunt 👋 Get 30% off your first 3 months if you sign up using this link

What will tracking user behavior look like?

Today it’s Benedikt reporting about the technical aspects of Userlist. One of the questions that almost always comes up is this: ”How does Userlist know what my customers are actually doing inside my application?”

Benedikt Deicke
Benedikt Deicke

Today it’s Benedikt reporting about the technical aspects of Userlist. One of the questions that almost always comes up when talking about what we’re building is this: ”How does Userlist know what my customers are actually doing inside my application?”

We decided to tackle this problem by using a push model. [Jane’s comment: “It’s very kind of Benedikt to say ‘we’ here, because it’s entirely his technical brain behind this decision.”] So instead of Userlist getting access to your database and trying to figure out what’s happening based on that, we rely on the data your application sends to us.

When a new user signs up to your application, you send us data you want us to process for you, alongside user’s unique identifier. In most cases this will be something like their name, email address, and – for example – their ID in your database. What data you actually send is up to you. The only required piece of information is the unique identifier.

Afterwards, you can send in events for activities the user performs in your application. Events can be as simple as an event name (let’s say project_created) and the user’s unique identifier. If you want, you can augment that event with additional properties (like the name of the project they created). We’ll record that event for the user and trigger necessary email automations you set up.

As you’ve probably figured out by now, integrating Userlist will require some custom development on your side. However, once the event tracking is setup, your marketing team will be able to implement new powerful automations on their own, without bothering your developers. That’s a huge time-saver, even if you’re a solo founder and represent both of these “teams” ?

We also plan to make the setup process as easy as possible. We’ll be offering a very simple HTTP API, that allows you to push data as JSON, as well as libraries for popular programming languages. Feel free to check out the early versions of Ruby and Rails gems on Github.

To give you a better idea, here’s an example call to track a single event for a user. The example is using curl, but you’ll be able to use any HTTP client you want (or one of our libraries).

1
2
3
4
5
6
7
8
9
10
11
curl -X "POST" "https://push.userlist.com/events" \\
    -H 'Accept: application/json' \\
    -H 'Content-Type: application/json; charset=utf-8' \\
    -H 'Authorization: Push 1a945a4e0d39a969eb3' \\
    -d $'{
 "user": "8f67134c-8e44-469b-8957-47f9c55aa1ef"
 "name": "project\_create",
 "properties": {
    "name": "Summer Vacation 2018"
 },
}'

I hope this gives you some insights into what integrating with Userlist will look like. As always, we’re looking forward to your questions and comments.

– Best, Benedikt.

About the author
Benedikt Deicke

Benedikt is a software engineer and ex-strategy consultant. Before founding Userlist, he used to help founders plan, build, grow, and maintain their web applications. He's a co-host on the Slow & Steady podcast and co-founder of FemtoConf.