PostHog / posthog

🦔 PostHog provides open-source product analytics, session recording, feature flagging and A/B testing that you can self-host.
https://posthog.com
Other
20.77k stars 1.24k forks source link

Project Homepage #8595

Open rcmarron opened 2 years ago

rcmarron commented 2 years ago

Is your feature request related to a problem?

When a user opens a PostHog project, they're brought to the insights list. This page doesn't do a great job of introducing a user to PostHog or helping them leap into other parts of the product. We could do a much better job of using this real estate to quickly get users to what they're looking for and help them understand:

It feels like there's a clear opportunity to create a project homepage that addresses some of these concepts, and allows us to improve some of our core metrics (discoveries, number of organizations using multiple features, number of users viewing other user's insights)

Describe the solution you'd like

What should be on this project homepage? I imagine the project homepage is an evolving piece of real-estate. But a few ideas that seem like good options to explore are:

Questions

cc @clarkus @paolodamico @Twixes

Thank you for your feature request – we love each and every one!

paolodamico commented 2 years ago

Great context and agree on the huge potential value of this. As we tackle a V1 for this, we should focus on a single problem. Based on recent conversations, I suggest focusing on enabling teammates to answer questions they have (search) and discover potentially useful insights (interesting).

This would mean excluding for now: learning to use PostHog, additional project information, social feeds, aliveness/activity, … This also means the experience of the home page today can be the same on Day 0 and on Day 100. Thoughts?

timgl commented 2 years ago

We've done this sort of thing before, here's some context: https://github.com/PostHog/product-internal/issues/50#issuecomment-944470182

rcmarron commented 2 years ago

We've done this sort of thing before, here's some context: https://github.com/PostHog/product-internal/issues/50#issuecomment-944470182

Got it, thanks for sharing. Reading that, it sounds like the experiment was a success - drove up discoveries. Curious if there's a reason we didn't pursue it further outside of limited resources?

As we tackle a V1 for this, we should focus on a single problem. Based on recent conversations, I suggest focusing on enabling teammates to answer questions they have (search) and discover potentially useful insights (interesting)

This also means the experience of the home page today can be the same on Day 0 and on Day 100

clarkus commented 2 years ago

I put together an updated concept to help facilitate discussion. The idea is to promote fresh insights and recordings. Pinned dashboards are shown in a secondary placement. If we think dashboards will be created or changing frequently, we could also include a list of recent dashboard updates. Other lists to consider are users (or other actors) seen for the first time, recordings of a significant duration, new incoming events, etc.

These are all just ideas, so feel free to leave feedback on anything you see.

project overview
rcmarron commented 2 years ago

This looks great @clarkus! Thanks for pulling it together! I think it really helps make the concept feel more concrete.

Seems like the next big decision is what exactly should be on the home page. I imagine this is a constantly evolving page, so we don't have to nail it the first time, but we should try our best 😀.

So, what should go on the homepage?

The overarching goal of the homepage is to try to get users to valuable content as quickly as possible. It's essentially a "launch pad" for the product.

There seems to be 2 distinct types of users to consider here:

I imagine a great V1 homepage is one that mainly spans these two "launchpad" use cases, and maybe addresses a couple secondary goals: explain what the project is + share what PostHog is capable of

With these things in mind, I think the following is a good starting point:

V1 Homepage proposal:

Note: each of these items above needs a layer of deeper thought, but let's agree on general direction first.

Notable omissions for V1:

Big questions on my mind:

Would love thoughts on this: @clarkus @paolodamico @mariusandra @alexkim205 @Twixes @pauldambra

clarkus commented 2 years ago

I think your proposal is on target. Are there any other page-level actions we should consider other than creating an insight? Inviting another collaborator?

The more I think about it the more I don't think pinned dashboards are good fit here. We already have them prominently placed in the navigation. I'd rather try something else that's new and either time-based or views-based to promote the content that is being viewed by others. Thoughts?

How do we make this feel not "dormant" if people aren't using the project?

I actually think this is a good thing. It's transparent, unbiased, and in the current world of algorithms, dare I say refreshing? A lack of activity is a sign that maybe users aren't doing much directly in the product. I think that could be a valid use case for projects with low collaborator counts.

One thing to track with our planning is accounting for projects that don't have collaboration enabled. I think it would be a pretty harsh upsell if we maintained this as the landing page for those users. We just need to think through what their experience should be and identify places we can upsell collaboration.

rcmarron commented 2 years ago

Inviting another collaborator

This makes a ton of sense to me. Especially if we're showing the collaborator list.

The more I think about it the more I don't think pinned dashboards are good fit here.

Sold. I'm all for trying new things on the home page, and I agree that pinned dashboards already have a prominent location. We could always add it down the road if needed.

Also, the more I think about it, the more I like the idea of the homepage showing insights over dashboards. A dashboard is just a container of insights, and so it's weird for the homepage to be a container of containers of insights.

One thing to track with our planning is accounting for projects that don't have collaboration enabled

Agreed, once we have the list of items here, we should dig into which are behind a pay wall and which aren't.

(p.s. updating the list above to reflect these thoughts)

mariusandra commented 2 years ago

This looks good, though I'd propose a tactical change to the plan and split out v0.1 from v1.

These two points:

... require building something that doesn't exist yet. Since building these features is exploratory in nature ("how to store the data?"), it can take anything from 1 to 10 days.

Hence I suggest splitting out a v0.1 that'll be built without significant changes to our data model. Get that in front of real users ASAP to hear what they would actually benefit from. It might turn out that there are even better things to do and we only think we know what v1 should look like. Or not, but at least we'll be certain we're spending those 10 days wisely.

marcushyett-ph commented 2 years ago

Inviting another collaborator

I think this is key - from what I've observed a lot of people are using shared accounts, so they won't get the benefits of collaboration. Getting more team members in, is just as important as showing them interesting insights. Also larger teams correlate with a more downstream success.

This looks good, though I'd propose a tactical change to the plan and split out v0.1 from v1.

I agree strongly with @mariusandra point about keeping the MVP scope tight so we can get it out fast and learn faster from our users, but my gut feel is that a feature like "The most viewed insights this week and which colleagues are viewing them" is probably more valuable to collaboration than many of the other features put together - so would advocate for tackling this sooner rather than leaving it a lot later.

Tactical question:

marcushyett-ph commented 2 years ago

One thing to track with our planning is accounting for projects that don't have collaboration enabled

Personally, I think these proposed collaboration features should be available to everyone (future ones perhaps not), since organizations are significantly more likely to subscribe (ref paid up section here) if they add someone else to their organization and probably even more so if that person instantly gets some value from the product (through these features).

@timgl what are your thoughts, since this goes against our start paid, make it free later approach?

neilkakkar commented 2 years ago

Some user context:

As a searcher in a single-person project for a website, I still open google analytics more often than PostHog, simply because it opens up on the page I really care about: trend of users over time + people currently on site. It takes me 3 seconds to open-see-close, assuming numbers are not waay high or low.

And the main point:

The overarching goal of the homepage is to try to get users to valuable content as quickly as possible

Judging by the conversation and things we're choosing to build, this doesn't sound like the overarching goal to me? (For example, how does "invite collaborator" fit in here?).

I might be being too pedantic here, but I think when building something like this, the goal is to learn as much as you can (which informs future iterations). Doing that is a lot more valuable when you have a solid specific hypothesis about what users want, and find specific ways in which it's wrong.

For example, it feels like there's not one, but three mostly-independent goals for a homepage:

  1. See & use valuable content (insights / recordings / new insight etc.)
  2. Drive collaboration + retention for PostHog usage ( a goal for us, much more than users? Is this also what users want? idk yet). Invite teammates fits in here, imo
  3. Setting up new users for success (what this project is about, who's in it, new insight button(?), and here are some cool onboarding things you can do (the last 2 things have some overlap with (1) )

And once we have a better idea of goals, we can slice v0.1 by focusing on specific goals, and testing for those goals (while also gathering feedback for other goals), vs. machine-gun-spray-fire everything.

I think (1) and (3) are wildly different users (the veteran vs newbie split), and in most flexible products, necessarily have different ways of approaching things (existing set patterns built up over time, vs, new person learning new concepts to traverse PostHog), and keeping this in mind during design / implementation / the kind of users you get feedback from - can help us get higher quality feedback.

rcmarron commented 2 years ago

I'm all for shipping a quick version ASAP, and I think the changes @mariusandra proposed make sense. I also agree with @marcushyett-ph that the "Most viewed insights" features seems very valuable.

With that in mind, I think we try to pursue both in parallel (getting multiple people on the team involved).

So we would work on:

1. Basic homepage: A quickly shippable project homepage for us to iterate from

2. Recently viewed insights: Track and display recently viewed insights

@clarkus From a design perspective, I think we work toward the version that encompasses all of this, and we can just pair that down for the basic version. Does that make sense?

posthog-contributions-bot[bot] commented 2 years ago

This issue has 2267 words at 12 comments. Issues this long are hard to read or contribute to, and tend to take very long to reach a conclusion. Instead, why not:

  1. Write some code and submit a pull request! Code wins arguments
  2. Have a sync meeting to reach a conclusion
  3. Create a Request for Comments and submit a PR with it to the meta repo or product internal repo

Is this issue intended to be sprawling? Consider adding label epic or sprint to indicate this.

rcmarron commented 2 years ago

As a searcher in a single-person project for a website, I still open google analytics more often than PostHog, simply because it opens up on the page I really care about: trend of users over time + people currently on site. It takes me 3 seconds to open-see-close, assuming numbers are not waay high or low.

I think this is a really good point. They do a great job of getting users to this valuable content as soon as possible (by having the graph right there immediately). I think we could potentially do something similar - maybe we add a concept of pinning an insight to the homepage? And by default, DAU, page views etc are pinned?

I want to make sure we treat the homepage as a flexible place for us to run experiments and try things out, and seems like an obvious thing that we should try (maybe right away?)

For example, it feels like there's not one, but three mostly-independent goals for a homepage

I think you’re right. Homepages are super valuable real estate, and they inevitably end up serving multiple purposes - which makes them tricky.

With that said, I think having 3 independent goals here isn’t great for driving immediate clarity. And I think your first goal is the most important for the homepage, so as much as possible, I want to try to keep us focused there for now.

I’m almost certain that when we want to tackle “Setting up new users for success”, the homepage will play a role in that. But let’s tackle that down the road. Maybe it’s V2.

clarkus commented 2 years ago

I'll be working on MVP updates at https://www.figma.com/file/gQBj9YnNgD8YW4nBwCVLZf/PostHog-App?node-id=7666%3A41216. Nothing there yet, but should have something ready by the end of the week.

kpthatsme commented 2 years ago

Skimmed the thread briefly - as Tim mentioned we ran this before.

To answer your question @rcmarron - no, resources were the only constraint.

I have lots of ideas on what might be effective here let me know if you wanna discuss. In our previous experiment we ran tutorials, tooltipped insights, and org insights for different personas (mostly covered in the write up Tim linked to).

clarkus commented 2 years ago

I have lots of ideas on what might be effective here let me know if you wanna discuss. In our previous experiment we ran tutorials, tooltipped insights, and org insights for different personas (mostly covered in the write up Tim linked to).

Sign me up for a chat. This is very much just an attempt to see how users respond to this kind of data. I think there's a ton of room to make it more valuable longer term, so I'd love to hear any ideas you have.

rcmarron commented 2 years ago

Same! Just set up some time for us for tomorrow.

rcmarron commented 2 years ago

Capturing some off-line conversations that @clarkus and I have been having:

We had concerns about the proposed scope above not really nailing the goal of "get users to valuable content as quickly as possible".

After exploring what other products do for their homepage, it seems like there's pretty strong consensus around 2 things:

  1. A customizable project dashboard
  2. Lists of commonly accessed things (e.g. your recently viewed insights)

These items seem much more aligned with getting users to valuable content as quickly as possible. The dashboard allows users to decide what the most valuable content is and have it immediately available. And the lists are our best guess of what you're looking for (e.g. the last insight you looked at).

With this in mind, we're going update our approach here to:

V1:

V1.1:

A couple questions that come with this decision are:

@marcushyett-ph does this sound good to you?

marcushyett-ph commented 2 years ago

Firstly, we should come up with a way to measure our progress against this goal: "Get users to valuable content as quickly as possible", so we can understand if we're iterating in the right direction.

Personally I think Discoveries is a good proxy for "finding valuable content" and running an A/B test would be a good way to measure it (I would advocate not to overcomplicate by adding something specific to account for "as quickly as possible"). Thoughts?

V1:

V1.1:

I would not provide any other shortcuts for now - new persons or events feels like for any non-micro user it would become meaningless and overwhelming very quickly.

Answers to open questions:

More questions:

clarkus commented 2 years ago

+1 on discoveries as a driving metric.

marcushyett-ph commented 2 years ago

@rcmarron @clarkus context on having a default dashboard for a project:

The majority of pinned dashboards used in the last month are primary dashboards of some kind (inferred from their name) for example:

This strongly supports up the approach of a single primary dashboard for the homepage.

marcushyett-ph commented 2 years ago

Default dashboard Proposal

I'm proposing some small tweaks on the default dashboard we create. Like I said above this shouldn't be a blocker for v1 and feel free to make the final call on this @rcmarron.

Current default dashboard:

Proposed default dashboard:

Source of proposed changes:

clarkus commented 2 years ago

Related - https://github.com/PostHog/posthog/issues/5209