TNRIS / dataHub

ReactJS frontend web application for browsing, downloading, and inquiring about TNRIS public data and historical imagery.
https://data.tnris.org
7 stars 0 forks source link

Enhance DataHub analytics to better understand our users #278

Open jwhaney opened 3 years ago

jwhaney commented 3 years ago

Research & Development: we need to learn more about better ways to use Google Analytics in the DataHub

There are probably many other questions that Analytics could address and assist with to better understand our users. Right now we have Google Analytics implemented in the most basic way.

mitchellryant commented 3 years ago

i am happy to assist, but know very little about the google analytics. I do recall James saying it may not be the best way to track downloaded data, but that was on the old site.

So far this year we have had 580 Orders in the ticketing system, all via DataHub. Advanced Search Tickets - 20200914.xlsx

jwhaney commented 3 years ago

thanks for the feedback @mitchellryant . you are correct, implementing google analytics better within the datahub would not necessarily be to assist with better tracking of downloads, or any for that matter. this is more from a perspective of better understanding users interaction with the site/application which will help drive future enhancements/work to the app.

i just included you in case you wanted to be notified of progress towards this effort. i can remove you as an assignee if you'd like.

mitchellryant commented 3 years ago

Like i said im happy to help any way possible. @JasonKleinert briefly discussed exporting the Users for the ticketing system to get a better idea on customers asking questions. We could define users by sector type the work in, but this would only give us info on customers that ask questions.

mitchellryant commented 3 years ago

Here is an interaction where the user does not know how to proceed, once an item has been placed in the cart.

typically

mitchellryant commented 3 years ago

order2

JasonKleinert commented 3 years ago

Off topic from enhancing the analytics, but based on the two example tickets provided I agree that the location of the shopping cart can be confusing for users not familiar with the system and who only ever visit a single collection, add it to the cart, and then want to head straight to ordering.

some background on how we got here: The app design started with the collection views being contained in a modal which allowed for higher visibility of the cart and better awareness for the user, but was changed per request. We then had issues with keeping the header up there all the time because the collection search bar confused users once they were in the collection card, so the view was adjusted to what we have now. No header in collection views.

Maybe we need to bring the header back across all views? Maybe just add a link to "checkout" in the feedback when you add an item to the cart? Just a couple ideas. Either way this feature could use some reworking.

Ldsmiths commented 3 years ago

image

The simplest fix would probably be to just have a link to the shopping cart/checkout displayed here. We could also include some text inviting them to close the modal if they'd like to add more to the cart.

I can see how pricing would be confusing, but I'm guessing that's mostly out of our control since there are so many variables involved...it might help to put this line "Final cost for your order depends on many variables including hardware, staff time, computer time, data size, etc. TNRIS will contact you with the final, calculated cost." at the top of the order tab so people understand the process earlier on and aren't expecting to be able to pay and download immediately.

adambreznicky commented 3 years ago

maybe we should just add a second link to the shopping cart? rather than it only show up on the main header (and only when it has contents), instead it should show up on the collection template headers just the same (only when it has contents).

for example, a user comes to get a collection, the card looks like this: Selection_164

then they order that data, so the icon appears: Selection_162

and then they can go directly to the cart to check out. or they could go to another collection to keep shopping, and the cart would be there: Selection_163

adambreznicky commented 3 years ago

i really like this idea. we can definitely add more text to get ahead of our inherent issue of costs having to be calculated after the order is submitted.

"Final cost for your order depends on many variables including hardware, staff time, computer time, data size, etc. TNRIS will contact you with the final, calculated cost."

i would add: "... after your order is submitted."

jwhaney commented 3 years ago

i'm sorry but this is not on topic for this issue. i completely agree that this is a known problem and should be resolved, but we need to create a separate issue. just trying to keep issues on a more specific topic rather than a broad discussion.

this issue is meant to expand google analytics across more react components, material design elements, clickable elements in the tooldrawer, etc. the problem discussed above is a current UX problem that should be addressed in a separate issue.

please refer to issue #280 for discussions regarding improving user access to the shopping cart from a collection view.

adambreznicky commented 3 years ago

thanks for the feedback @mitchellryant . you are correct, implementing google analytics better within the datahub would not necessarily be to assist with better tracking of downloads, or any for that matter. this is more from a perspective of better understanding users interaction with the site/application which will help drive future enhancements/work to the app.

i bet we could wire up a google analytics event log for the anchor href download links. have it log Category <--- collection name ---> Action "Download" Label <--- the actual download filename --->

won't be as fine grained as it used to be, with area_type breakdowns and whatnot; but it would be at least halfway there and provide a GUI statistic to be comparable to anyone who accesses the download programmatically

ctrepka commented 3 years ago

Planned to use Google Tag Manager in addition to Google Analytics for event tracking on download buttons, search features, and forms.

However, Google Analytics 4 was recently released rather quietly with some indication that it might integrate Google Tag Managers custom events in the new GA4 interface whereas they used to be separate.

Awaiting further details and feedback from the public on what GA4 brings to the table, how it integrates with GTM, React, etc. Will circle back in a few weeks.

ctrepka commented 3 years ago

https://stackoverflow.com/questions/64519920/how-to-set-up-google-analytics-4-for-react-router looks like some people are just resolving to using the gtag cdn directly in the and using the library directly from there with the same url tracking methods we currently use with React-GA. Kinda an obvious solution and I probably should've tried it earlier. Looks like react-ga is losing support, though, and may not be actively maintained any longer. Could be wise to remove that library entirely from the app and move forward with the gtag solution mentioned above.