Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add time on page, so customers can evaluate if people read my articles #100

Closed
adriaanvanrossum opened this issue Nov 13, 2019 · 65 comments
Closed
Assignees
Labels
customer request drill down prio public script

Comments

@adriaanvanrossum
Copy link
Contributor

@adriaanvanrossum adriaanvanrossum commented Nov 13, 2019

This feature is explained here: https://docs.simpleanalytics.com/explained/time-on-page

@adriaanvanrossum adriaanvanrossum added the customer request label Nov 13, 2019
@adriaanvanrossum adriaanvanrossum added this to Features & bugs in Public roadmap via automation Nov 13, 2019
@adriaanvanrossum adriaanvanrossum moved this from Features & bugs to In progress in Public roadmap Dec 8, 2019
@MikeMcNZ
Copy link

@MikeMcNZ MikeMcNZ commented Dec 22, 2019

This would be useful

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Dec 23, 2019

We already have the logic in the user facing scripts:

https://github.com/simpleanalytics/scripts/blob/a0b7efa292033edfb4bc9c53f43231aaee0972d7/src/default.js#L111-L121

After we moved our server we will update the API endpoint to handle this new metric and include it in our stats.

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Jan 19, 2020

Updated the API endpoint, next in line is showing it in our API and UI.

@adriaanvanrossum adriaanvanrossum self-assigned this Jan 19, 2020
@adriaanvanrossum adriaanvanrossum changed the title Add time on site, so customers can evaluate if people read my articles Add time on page, so customers can evaluate if people read my articles Feb 25, 2020
@hellno
Copy link

@hellno hellno commented May 2, 2020

this feature would be super useful, is there an estimate on this? thanks for all the great work!

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented May 2, 2020

We are working on making the feature possible. We already collect the data. When you export via CSV you will see time on page. We are now working on a new database structure which will make it easier to show in the dashboard.

@mrquincle
Copy link

@mrquincle mrquincle commented May 4, 2020

This feature would be great, seconded/thirded!

@Macro-Jackson
Copy link

@Macro-Jackson Macro-Jackson commented May 4, 2020

This is also nice for the bounce percentage (inverse of this idea).

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented May 4, 2020

@Macro-Jackson only downside it that you don’t know if it’s the first/landing page.

@Macro-Jackson
Copy link

@Macro-Jackson Macro-Jackson commented May 4, 2020

Yes, if you're right. I meant like a page bounce.

You can conclude that if a person leaves your site directly on the first page that it is bad. But short page visits maybe less harmful but still no good.
Not an official bounce percentage and I don't know the official term but I would call it "Page bounce rate".

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented May 4, 2020

Smart, that's actually a good alternative. Page bounce rate. Brilliant.

@Ciunkos
Copy link

@Ciunkos Ciunkos commented May 4, 2020

Workaround for people that need the feature and cannot wait for it to be deployed:

  1. Run an async loop with the desired resolution (minutes/seconds) on a page startup and submit a custom event with time marker in the event name, for example t_15 for 15 minutes spent on the site.
  2. Inspect events page and count events to get average session duration, etc.
  3. Wait for a proper solution!

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented May 6, 2020

We are working on making the feature possible. We already collect the data. When you export via CSV you will see time on page. We are now working on a new database structure which will make it easier to show in the dashboard.

This is incorrect. We do store the data but we don't link it to the page views yet. So exporting to CSVs will not give you duration_seconds values. Sorry for this misinformation.

@lucky13820
Copy link

@lucky13820 lucky13820 commented May 19, 2020

I just started my free trail and will purchase it. This feature is certainly important, hope to see it live soon.

@RubenVanEldik
Copy link

@RubenVanEldik RubenVanEldik commented Aug 5, 2020

Hi @adriaanvanrossum,

I am new to SA and I love your product so far!

Time on page is quite important for me, do you have a rough ETA for when this will show up in the dashboard?

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Aug 5, 2020

Thanks Ruben. We have a beta version live of the new dashboard. When this is tested and deployed to producten we will add the time on page. I'm on a holiday right now, and back in two weeks. Give me 3 more weeks and I think it should be visible in the dashboard.

How would you visualize time on page? Want to keep our UI simple. Love some ideas on that!

@RubenVanEldik
Copy link

@RubenVanEldik RubenVanEldik commented Aug 5, 2020

Yeah, its super important to keep it simple, the last thing you want is to have it slowly morph into something like Google Analytics. 🙃

I am no UI expert (by a long shot!), but this is where I would add it:

  1. Change the general UI of X visitors in the last month to something that shows the number of visitors, pageviews, and cumulative time. You might be able to put this in a box in the top left corner of the graph, instead of as text above the graph, so its also clearer that this number is dependent on the timeframe of your current graph (this was initially not clear to me).
  2. In the general graph as a third line (either cumulative or averaged)
  3. Add the ability to toggle the Top pages between pageviews, visitors, cumulative time, and average time. This would be the most informative place, since it would allow you to see which pages users really use. But I have no idea about how to make this work UI wise.. 😛

@RubenVanEldik
Copy link

@RubenVanEldik RubenVanEldik commented Aug 5, 2020

Oh, and enjoy your holiday! I hope you'll be able to recharge and I'll be looking forward to all the improvements this fall!

@adriaanvanrossum adriaanvanrossum added the prio label Aug 26, 2020
@danielunited
Copy link

@danielunited danielunited commented Oct 1, 2020

Hi! When can we expect this release? Been waiting for it for a long time 😄

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Oct 1, 2020

Thanks for asking. I wish this was done as well. We hoped the new database structure would be done by now, but we found some bugs that need to be fixed first. We are as excited as most customers for this, we do our absolute best to get this out as fast as possible. But I'm hesitant for any ETA now, because we don't know what other problems might arise.

@danielunited
Copy link

@danielunited danielunited commented Oct 1, 2020

Alright, thanks guys.
P.s. If you need any beta testers, feel free to ping me.

@adriaanvanrossum adriaanvanrossum moved this from In progress to Features & bugs in Public roadmap Oct 21, 2020
@ocram
Copy link

@ocram ocram commented Nov 24, 2020

If you want one value to describe a single page, i.e. a value in the middle as the “average” time, you would usually choose the median value and use it exclusively, instead of the arithmetic mean. That way, you don’t have to worry about outliers at all.

If you want almost all values, e.g. to show in a detailed view for a specific page, why not just show the 10th through 90th percentiles and discord the margins?

In any case, detecting if the user is actually active, even before all the above post-processing, is certainly a good idea. If you can avoid poor data in your input, your output improves regardless of the processing in between.

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Nov 25, 2020

We decided to use the median value @ocram. Thanks all for weighing in. To detect if a user is active we listen to the pagehide and visibilitychange event. If a user has a page open we count that as active. We don't want to track mouse movement as it would be a bit more privacy unfriendly.

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Nov 29, 2020

You can now download the scrolled_percentage and duration_seconds from our API: https://docs.simpleanalytics.com/api/csv-export-visits. We did add this data to pages, but they don't make much sense when sorted by duration_seconds.

We are going to add website wide metrics like the median of duration_seconds that combine all pages into one.

At the same time we are working on an algorithm that decides the quality of the page. For that algorithm we use duration_seconds, scrolled_percentage, and amount of visits. We tried without amount of visits but then you get a lot of results with a super high duration_seconds and almost no visits. This would not be very useful so we will work a bit more on this algorithm.

But if you want to play around with the data yourself, please do! Instructions to download are documented here.

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Dec 8, 2020

Working on the UI & UX for website wide metrics:

Screenshot

Edit: updated screenshot

@ryanqyao
Copy link

@ryanqyao ryanqyao commented Dec 8, 2020

It's looking good! Can't wait to see this live.

@jibsaramnim jibsaramnim moved this from Planned to In progress in Public roadmap Jan 8, 2021
Public roadmap automation moved this from In progress to Implemented Jan 30, 2021
@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Jan 31, 2021

Finally the time on page is live!!!

Screenshot

https://simpleanalytics.com/simpleanalytics.com

@danielunited
Copy link

@danielunited danielunited commented Jan 31, 2021

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Jan 31, 2021

@danielunited how much should it be you think? Does the export of your data tell you otherwise? Do note that most websites show time on site, we show time on page.

@kasperkamperman
Copy link

@kasperkamperman kasperkamperman commented Jan 31, 2021

I was wondering the same watching the simpleanalytics demo page:
https://simpleanalytics.com/simpleanalytics.com

I assume 7s is really short for a landing page? Don't pull bots the number low?
I assume any human seriously reading 1 sentence should already be more than 7s on the page?

https://simpleanalytics.com/simpleanalytics.com/index?period=month

I see the root is 18s. What is the diverse between the default? (is that the analytics page itself?).

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Jan 31, 2021

The root is the homepage only (18s). The whole site is 7s. We show the median for time on page.

If I go to a blog you see more than 1 minutes, which makes sense:

https://simpleanalytics.com/blog.simpleanalytics.com/may-2020-all-stripe-data-explained-and-we-just-hit-6000-usd-mrr?period=month

@danielunited
Copy link

@danielunited danielunited commented Jan 31, 2021

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Jan 31, 2021

I took a random day on a website where I have both Simple Analytics and Google Analytics installed. Both tools are setup to use UTC time zone. I limited it to only one page (/radio+538). The date I used is Jan 15 2021.

Google Analytics

I get these results in Google Analytics:

Average duration in Google Analytics should be 1:31 (91 seconds):

Screenshot

With the data below I don't get close to that number. I really wonder how they calculate it.

Table with Google Analytics export (216 page views)

This data is exported by https://ga-dev-tools.appspot.com/query-explorer

ga:timeOnPage
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
3
3
3
3
3
3
4
4
7
7
13
15
15
15
17
17
17
24
24
28
28
28
28
33
40
40
40
40
40
40
41
41
44
44
59
59
59
59
59
59
59
59
59
59
59
70
70
70
70
70
70
70
70
70
70
70
70
108
108
108
108
108
108
145
145
145
145
145
145
200
200
200
200
200
200
200
200
200
253
253
253
253
332
332
332
332
332
332
332
332
332
332
519
519
519
519
545
545
545
608
608
608
608
608
608
608
608
608
608
608
608
608
808
808
808
808
808
808
808
808
1129
1129
1427
1427
1427
1427
1427
1427
1427
1427
1427
1427
1427
1555
1555
1555
1555
1555
1555
1555
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1687
1816
1816
1816
1816
1816
1816
1816
1816
1816
1816
1816
1816
1816

Can somebody help me to see how Google does get to 91 seconds with the above data set?

Simple Analytics

The average is 3m42 (222s) and the median is 10s.

At simpleanalytics.com/watiseropderadio.nl you see the median of the data.

Table with Simple Analytics export (221 page views)
duration_seconds
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
7
8
8
8
8
9
9
9
10
10
10
10
10
10
11
11
11
11
12
12
12
12
13
13
13
13
13
13
13
14
14
14
14
14
14
14
14
15
15
15
15
15
15
15
17
17
17
19
20
20
20
20
20
21
21
21
21
22
22
23
23
24
26
27
27
28
28
28
29
31
31
32
32
37
38
39
42
43
44
47
47
48
49
50
51
51
54
56
57
58
59
69
71
97
108
215
711
711
760
3252
8527
23534

Differences

Some reasons for why this data can be different

Simple Analytics Google Analytics 
Does detect when a page hides and stops the counter Calculates the time between first page and second last page (the last page duration is unknown to GA 
Using median not average Using average (including all rows)
Does not include page views with zero seconds Including all page views (also with zero seconds)
Not limiting any data (because median doesn't really care about that) Limiting time on page to roughly 30 minutes

I wonder if we should teach our customers these differences. People tent to compare GA with SA. In that case we might look like inaccurate while we just use another calculation. Personally I would rather have a data set that does not include the time when a page is hidden and with an median.

What do you all think?

@kasperkamperman
Copy link

@kasperkamperman kasperkamperman commented Jan 31, 2021

I think the simple analytics calculation makes sense, how you describe it. However the numbers seem kind of low. Not only from GA perspective, but just based on what seems reasonable.

I experimented a bit in Excel with the numbers.
Maybe trimmean would make more sense to remove a % of outliers? And then indeed excluding zero seconds.

https://docs.google.com/spreadsheets/d/1L4yo9cRzezJX2XDm6iy1P2ddYkqUVuiN0AjmQlnffKc/edit?usp=sharing

I don't know if median on this type of data makes sense. Because time spend is really diverged and it's not a super large amount of data (but I'm not really into statistics).

Just thinking out loud. Maybe a test, visit a specific page for exactly 60 seconds a lot of times? And then add some outliers, to see what happens with the data. To see which percentage could be safely excluded.

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Jan 31, 2021

Thanks for your help @kasperkamperman! Appreciate it.

However the numbers seem kind of low. Not only from GA perspective, but just based on what seems reasonable.

Do you mean the numbers of the export table of Simple Analytics? Those are send from this part of our public script:

 append[duration] = Math.round((now() - start - msHidden) / thousand);

What would be reasonable numbers?

@kasperkamperman
Copy link

@kasperkamperman kasperkamperman commented Feb 1, 2021

However the numbers seem kind of low. Not only from GA perspective, but just based on what seems reasonable.

I mainly pointed to 7s, but that's a site wide average.
Maybe 18 seconds for a landing page makes sense indeed. I tried scanning the page quickly and it's seems in 18 seconds you can get a quick impression of the product (not watching the video).

Maybe the "low values" count too much?

  • Do you start counting when above the fold is loaded (I understand it's impossible).
  • How much time does it cost before a human can grasp what's on the screen?

My ballpark estimation it's about 1-2 seconds?

I think time on site makes most sense in a way that a human is actually "consuming" the content. So only the number that a human can actually consume content should be counted.

Maybe time indeed makes most sense when you compare between cohorts (so to mainly use it to calculate changes between months or changes).

@ocram
Copy link

@ocram ocram commented Feb 1, 2021

I’ll assume you shared both data sets with the same unit (i.e. seconds).

First, you need to find out if it’s your statistical measures that are responsible for the different results, or if it’s the actual raw data. So let’s compare both data sets with the same (but multiple) measures:

GA (all) SA (all) SA (all, max value) GA (non-zero) SA (non-zero) SA (non-zero, max value)
1st quartile 59 3 3 70 4.25 4.25
2nd quartile (median) 332 7 7 545 10 10
3rd quartile 1687 17 17 1687 21 21
mean 716.0 183.2 48.0 781.1 222.4 58.3

If the raw data was consistent, the column pairs (2,3) or (2,4), and (5,6) or (5,7), would show the same results. But they don’t. So your raw data does absolutely not match Google’s raw data. You can keep the statistical measures you currently have, though.

Second, is the median really the proper measure here? Let’s see what Wikipedia says for a start:

The basic feature of the median in describing data compared to the mean (often simply described as the "average") is that it is not skewed by a small proportion of extremely large or small values, and therefore provides a better representation of a "typical" value.

The median can be used as a measure of location when one attaches reduced importance to extreme values, typically because a distribution is skewed, extreme values are not known, or outliers are untrustworthy, i.e., may be measurement/transcription errors.

https://en.wikipedia.org/wiki/Median

And that’s exactly what you want.

In conclusion, it may be your data collection that is “wrong” (if you want to match Google’s data, which makes sense).

@RubenVanEldik
Copy link

@RubenVanEldik RubenVanEldik commented Feb 2, 2021

I've been thinking about the mean time vs. median time debate for a bit. I think I agree with @ocram, because (most) users that are longer on a webpage are not outliers, but just users that actually read the product/blog/forum page.

Also, on a more anecdotal note: when I first saw the 'time on page value' appear on SA, one of the first things I did was to multiply the time by the number of pageviews to calculate the total time spend on my site. This, of course, only works for the mean value, not the median. I probably won't be the only user who will try this.

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Feb 2, 2021

I’ll assume you shared both data sets with the same unit (i.e. seconds).

Correct and thanks a lot for diving this deep into it! Appreciate it.

So your raw data does absolutely not match Google’s raw data.

@ocram could it be that the difference between GA and SA is mostly because of SA detecting when a page hides and stops the counter. GA calculates the time between first page and second last page. There are many page views of around 30 minutes within GA. I suspect that GA just sees a web page as active even if its tab is hidden for a long time. After that they probably limit the time on page by 30 minutes.

I think I agree with @ocram, because (most) users that are longer on a webpage are not outliers

@RubenVanEldik I think @ocram is saying that median makes the most sense here, right? In the above data set we have about 64 from the 216 page views that have a time on page of more than 25m (1500s). That's 28% that really stays on a page for at least 25 minutes. For me this seems way too high, right? That website doesn't even have content that long.

@ocram
Copy link

@ocram ocram commented Feb 3, 2021

@RubenVanEldik I think @ocram is saying that median makes the most sense here, right?

Right, so we may not actually agree here. As I explained, I’m pretty sure the median is the better measure here. But if so many users want the mean (because they want outliers to have an effect on the total, or more likely because they want data that closely matches GA), you could provide the mean as well, e.g. in a tooltip. Or as an alternative via a setting, but I wouldn’t do that. If users want total time on site, you could simply provide that, as you have the raw data to sum up.

@ocram could it be that the difference between GA and SA is mostly because of SA detecting when a page hides and stops the counter.

If we agree that the problem is in the raw data, you can probably check your hypothesis above in an experiment quite easily. Just create two test pages that only you will visit and add both SA and GA. Visit one page multiple times without hiding the tab, and the other while hiding the tab for a significant time.

@Macro-Jackson
Copy link

@Macro-Jackson Macro-Jackson commented Feb 3, 2021

Hmmm, I think this discussion is summing up a set of problems:
1 - Expected output is different then GA
2 - Is the calculation method right
3 - Is the source data correct

The common issue is: What do we expect as output?

I think that can be said as: "the average real time on a page for a real human visitor."

The questions where I am not sure of are:
1 - should page bounces be included in this average?
2 - if bounces should not be included then: what are page bounces?
a - only bots
b - bots and humans with a screen time < 3 seconds (or something in that ballpark)?
c - only humans with a screen time < 3 seconds (or something in that ballpark)?

If we have answers to that then we can look if the data set is measured right. And as I see what @adriaanvanrossum notes then this is pretty much what I would expect except for any definition about if bounces and bots are in or excluded.

To me median seems the right value here but then we should note that this should be without bots and bounces. Otherwise the data becomes quite skewed and always really low.
I only care for the humans who are interested how long I can keep them interested.

The page bounce percentage has a different problem and solution. Theses are the people who are in the wrong place. And therefor should not be included in this metric IMHO.

To sum it up:
Split page views in:
1 - Bots
2 - Humans

Split human visits in:
1 - Bounces
2 - Views

Present human views in:

  • Median time on page
  • Idea: Total page time might be a good addition if you have dynamic pages that don't reload like e-commerce categories where humans (especially women ;-) ) can look for ages for the right product. In this way you can see that page quality (visitor engagement) is improved.

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Feb 5, 2021

That's great @Macro-Jackson. We already hide all bots, so that's no problem. Leaving our the bounces would be cool as well. We could hide a visits less than 3 seconds. I like that suggestion. Maybe even 5 seconds?

@Macro-Jackson
Copy link

@Macro-Jackson Macro-Jackson commented Feb 5, 2021

IMO with cookie walls it takes already a few seconds before a visitor can scan the website to click away. So 5 seconds seems a valid number to call a difference between a bounce and a visitor.

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Feb 5, 2021

Let's say somebody lands on the home page (/). Would the bounce be only on the first page? If a user goes to /contact from / and only is a few seconds on /contact, is that a bounce? And are they both a bounce, because / was visited < 5 seconds as well.

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Mar 20, 2021

We just deployed the latest version of the app where time on page is exactly how we want it! Page views with a duration of less than 5 seconds are not counted in the aggregation, we are using medians, and filter out bots.

I just published some documentation about it as well: https://docs.simpleanalytics.com/explained/time-on-page

@RubenVanEldik
Copy link

@RubenVanEldik RubenVanEldik commented Apr 16, 2021

Thank you Adriaan for the great documentation! It’s nice to see you not only explained how something works, but also why you made the choices you made.

I’m not sure if we’ve had this conversation here before, but I couldn’t find it so I’ll ask it again.

I think it would be interesting to see the ‘time on site’ instead of ‘median time on all pages’ when on the home page of a site. Would this technically even be possible with the current data? I think this is a more interesting value (especially for sites with lots of pages where users switch often) because it gives an indication on the session length of users on your site.

@adriaanvanrossum
Copy link
Contributor Author

@adriaanvanrossum adriaanvanrossum commented Apr 19, 2021

Thanks Ruben!

I think it would be interesting to see the ‘time on site’ instead of ‘median time on all pages’ when on the home page of a site. Would this technically even be possible with the current data?

100% accurate "time on site" is not possible without sessions. For sessions you need to track visitors, so that's something we can't do.

We could however get closer to that number with "average page views per session". We do know the about of unique page views and non unique page views. So you know the average amount of pages a visitor visits. If we multiple the "median time on page" with "average amount of pages a visitor visits" we have something that comes close to "time on site". Not sure if that's something we should offer, but it might be fun.

In case you want to have time on page for the home page alone you can go to https://simpleanalytics.com/simpleanalytics.com/.

Screenshot

It basically shows you the median time on the home page (or whatever page you select).

@RubenVanEldik
Copy link

@RubenVanEldik RubenVanEldik commented Apr 19, 2021

I was indeed thinking about the unique page views as the indicator for sessions.

Using the median time would however give a wrong time, right? We would get the (near) perfect time when either multiplying the raw average time spent on the site multiplied by the average page visits or by dividing the sum of all time spent on pages by the unique page views.

I don’t know how the data is structured in the database, but with just the raw data the second option would be the easiest and most accurate, I think.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
customer request drill down prio public script
Projects
Public roadmap
  
Implemented
Development

No branches or pull requests