UXM UXMachine Real casesWhat UXMachine isTry it with a URLSign inESEN

Verifiable review

What we checked on this site

https://posthog.com/

Declared goal

A general review

This report is written for whoever can change this site. If that is not you, pass it on.

September 26, 2026·evidence captured during the analysis

This is the report we issued on September 26, 2026. We have not edited it since.

1

Diagnose

What we were able to measure

We reviewed 10 of the 56 linked pages, at 1280 px and 390 px. Everything we say below comes from these captures, and each statement has the measurement it comes from underneath it.

Screenshot of the first screen of the page, as it looked when we read it, in a 1280×800 window.
Screenshot of the first screen of the page, as it looked when we read it, in a 390×844 window.

First screen at 1280×800 and at 390×844, as it looked when we read it. Where the first screen ends depends on the window size. Open them at full size to see it.

First screen at 1280×800 and at 390×844, as it looked when we read it. Where the first screen ends depends on the window size. Open them at full size to see it.

What you can leave as it isSee
Other things we observed, none of which point to a problem.See
What its forms ask forSee
What we checked and what was left outSee
The measurements, one by oneSee

We ran 6 checks. Complete: 2. Partial: 3. Not measured: 1. With that, we flag 2 changes for you.

2

Decide

What you can decide

Each one is a change you can make, with the measurement it comes from and how to check that it is done. In stage 3 we tell you in what order we would make them.

They are not ordered by urgency. Which one you work on first is a decision this report does not make.

Found in the review, with no demonstrated relation to what you asked for.

  • Act

    Give this field a label, as well as the text inside

    Why we say this —In 1 field we found example text and no associated label: Ask PostHog AI about this page.... It appears on all 10 pages we reviewed.

    As soon as you start typing, the example disappears and the field is left without a name. Anyone who loses track has to delete everything to see it again.


    You will know it is done whenthat field declares its label.

    It appears on 1 of the 10 pages we reviewed. · at both widths

    Where: /docs/cdp/sources

    The measurement: We found no <label> tied to that field. The placeholder does not replace it: it disappears as you type.

    Confirm it by looking at the form: each field has its visible label above it or beside it, not only the gray text inside

    What we do not know about this check: Complete across the pages we read.

    The evidence

  • Act

    Mark whether this field is required

    Why we say this —This form asks for 1 detail, and we did not find it declared as required in a way we can read. It appears on all 10 pages we reviewed.

    Nobody knows what they can leave blank. Neither does the browser, so it cannot warn before sending: the warning comes late or not at all.


    You will know it is done whenthat field, if it is required, is declared as required.

    It appears on 1 of the 10 pages we reviewed.

    Where: https://us.posthog.com/signup

    The measurement: We counted what the form asked for when it opened; it may ask for more as you go.

    Confirm it by looking at the form: the required fields stand out at a glance, and in the code they have required

    What we do not know about this check: Complete across the pages we read.

    The evidence

What the evidence does not allow you to decide

Found in the review, with no demonstrated relation to what you asked for.

  • On 1 of the 10 pages we reviewed, the first screen has links and buttons that share the same background, text color and font size. On the page with the most, 7 of 11.

    Their appearance does not separate one action from another: someone arriving has no visual cue to choose by.

    It appears on 1 of the 10 pages we reviewed. · only on mobile (390 px)

    Where: https://us.posthog.com/signup

    Check before you touch it: we do not measure this.

    What we do not know about this check: Not measured. A fixed layer sat over the first screen, and we cannot separate what is underneath.

    The evidence

3

Act

What to do, and in what order

2 changes, in the order we would make them. If you are only going to change one thing, change the first one.

Where this order comes from: three things we measured — how much it overlaps with what you asked us for, whether we could check it fully or only partly, and on how many of the 10 reviewed pages it appears. What we checked fully goes before what we checked partly. We do not measure how much each change costs, so if the first is expensive and the third is one line, start with the third.

Give these fields a label of their own, as well as the text inside

How to check it: Confirm it by looking at the form: each field has its visible label above it or beside it, not only the gray text inside

1 of the 10 pages · the card

Mark which details in this form are required

How to check it: Confirm it by looking at the form: the required fields stand out at a glance, and in the code they have required

1 of the 10 pages · the card

There are 5 more steps, in the same order

Declare the description of this page

How to check it: Confirm it in the page head: the meta description tag appears with its text

1 of the 10 pages · the card

Declare how this page looks when shared

How to check it: Confirm it in the page head: the Open Graph tags appear

1 of the 10 pages · the card

Declare the alt text for these images

How to check it: Confirm it in the code: every image on those pages has its alt text

9 of the 10 pages · the card

Raise the contrast of this text against its background

How to check it: Confirm it with the eyedropper in the browser inspector: each of the color pairs listed in the full report now reaches its minimum

5 of the 10 pages · the card

State whether these dropdowns are open or closed

How to check it: Confirm it in the menu code: it has aria-expanded, and its value changes when it is opened and closed

1 of the 10 pages · the card

What you can leave as it is

None of the checks we completed lets us say that something should stay as it is. That does not mean it is wrong: it means we do not have a complete check that certifies it.

Other things we observed, none of which point to a problem.

There are 5 facts.

  • We counted 959 images on the pages we reviewed. 146 of them are declared as decorative.
  • The main heading of / says: “Your product's context layer”.
  • The main heading of /self-driving says: “What if your product built itself?”.
  • The main heading of /context-warehouse says: “Give your agents the full context”.
  • And 7 more.

What its forms ask for

A form without a title inside the form itself. If there is a heading just above it but outside it, we do not count it.

  • A form without a title of its own asks for 1 detail; we found no mark we can read that says whether it is required. It is on https://us.posthog.com/signup.

Why it matters: Every detail asked for before getting an answer is one more decision for whoever fills it in.

We counted what the form asked for when it opened; it may ask for more as you go. We only see the forms the page declares as forms.

What we checked and what was left out

This report looks at this site at 390 pixels wide, with the same checks we run on desktop. There are three things specific to mobile that we do not check yet: the size of what has to be tapped, whether the phone zooms in on the page when a field is tapped, and what text size is left afterwards. That we do not name them does not mean they are fine: it means we have not looked at them.

We read 10 pages on desktop, and all of them could also be read on mobile.

Consent notice: we could not determine whether there was one on 10 of the 10 pages of this review. On those pages, what we describe is what loaded before we responded to anything; if the notice exists, content that only appears afterwards may be missing.

We read 10 of the 56 pages we found linked from the one you gave us. We start with the pages in the main navigation; footer links go last. Besides the page you gave us, we read up to 10 more pages per diagnostic. Here we reached that limit.

What we did and on what

We read 10 pages on September 26, 2026. We have 9 findings, in 6 groups. There is 1 more that we only show with its evidence.

How we chose which pages to read. We followed the links on posthog.com and found 138 anchors. 81 were repeated and 2 pointed outside the site.

We ran 6 checks. Complete: 2. Partial: 3. Not measured: 1.

  • https://posthog.com/
  • https://posthog.com/self-driving
  • https://posthog.com/context-warehouse
  • https://posthog.com/pricing
  • https://posthog.com/docs
  • https://posthog.com/demo
  • https://us.posthog.com/signup
  • https://posthog.com/docs/cdp/sources
  • https://posthog.com/product-analytics
  • https://posthog.com/session-replay

We ran 6 checks. Complete: 2. Partial: 3. Not measured: 1.

With that, we flag 2 changes. In 1 case, we hold back.

Where we did not look

Each abstention with its cause and its scope. Absence of observation is not absence of the problem.

  • Links whose destination we could not determine · on 10 pages we read

    We cannot tell which are links that lead nowhere and which are buttons that work — tabs and dropdowns are written the same way. We do not claim that any of them is broken.

  • Computed accessibility

    Partial. Visible focus does not show in a still capture, so we did not check it.

  • Navigation and links

    Partial. We checked links with no declared destination, but we did not follow any, so we do not detect a link that leads to a page that does not exist.

  • First screen and calls to action

    Not measured. A fixed layer sat over the first screen, and we cannot separate what is underneath.

  • Third parties and consent

    Partial. This check only covers the domains the page called while loading. We do not judge whether what the page does with those domains is lawful.

  • Comparison with a reference population

    We do not yet compare this site with any reference corpus.

LIMITS OF THIS REVIEW

  • These observations are limited to the reviewed pages listed above.

  • The pages we did not read are not in these observations: nothing this report says refers to them.

  • What we count as a link or button: links, buttons, controls that submit a form, and anything that declares a link or button role. If something acts as a control without declaring itself one, we do not see it.

  • We measure contrast against the reference the check itself comes with: 4.5 to 1 for normal text and 3 to 1 for large text. It is not a threshold of our own. We do not measure text placed over an image or a gradient: the check cannot determine the background color, and those cases do not reach these observations.

  • This review looked at the site in its light version. If the site changes its appearance when the computer or phone is in dark mode, that version has not been looked at, and what we say here about contrast does not apply to it.

  • This review was done from the Netherlands, within the European Union. A visitor from outside the European Union may not see the same thing: some sites change depending on where they are requested from.

  • Fixed layers are measured in each of the windows used in this review. At another window size, the part of the first screen that is covered changes, and a layer that covers nothing in one window may cover something in another.

  • We do not count images declared as decorative: an image is declared decorative with alt="", and that is a choice made by whoever put it there. We trust that declaration; we do not check whether the image really is decorative.

  • When we review the declared type of a field, we go by its name and its label. We do not check what is typed into it, so a field whose name does not announce what it expects can go by without us flagging it.

  • This review abstains on 6 points. Each one, with its cause and its scope, is under “Where we did not look”.

The measurements, one by one

On 1 of the 10 pages we reviewed, the first screen has links and buttons that share the same background, text color and font size. On the page with the most, 7 of 11.

F4 · First screen and calls to action

Their appearance does not separate one action from another: someone arriving has no visual cue to choose by.

It is on https://us.posthog.com/signup.

only on mobile (390 px)

Where it is

a,button

About this check: Not measured. A fixed layer sat over the first screen, and we cannot separate what is underneath.

If you decide to change it: Change the style of whichever one should be the main action. We have not tested the change, so we do not know what else is affected.

We found 1 field in the form that is only explained by the text inside.

F3 · Observed forms

Why it matters: That text disappears as soon as you start typing. The fields are: Ask PostHog AI about this page....

It is on /docs/cdp/sources.

at both widths

We found no <label> tied to that field. The placeholder does not replace it: it disappears as you type.

Where it is

input[placeholder]

If you decide to change it: One visible label per field. We have not tested the change, so we do not know what else is affected.

One form asks for a single detail, and we found nothing that says whether it is required.

F3 · Observed forms

Why it matters: Whoever fills it in does not know what they can leave blank until they try to send it.

It is on https://us.posthog.com/signup.

We counted what the form asked for when it opened; it may ask for more as you go.

Where it is

(what is this?)§email:

If you decide to change it: Mark each required field in its label, and declare it on the field itself with the required attribute. We have not tested the change, so we do not know what else is affected.

We found 1 menu that opens and closes without saying which of the two states it is in.

F2 · Navigation and links

Why it matters: Someone using a screen reader cannot tell whether it is expanded.

It is on https://us.posthog.com/signup.

at both widths

We found no aria-expanded attribute on the control that opens it, nor anything that changes it from false to true when it opens.

Where it is

[aria-haspopup]

About this check: Partial. We checked links with no declared destination, but we did not follow any, so we do not detect a link that leads to a page that does not exist.

If you decide to change it: One attribute per menu. We have not tested the change, so we do not know what else is affected.

On 5 of the 10 pages we reviewed, there are pieces of text that barely stand out from their background.

F1 · Computed accessibility

Why it matters: It is hard to read against the color behind it.

It appears on 5 of the 10 pages we reviewed. Among them: /, /self-driving, https://us.posthog.com/signup. Plus 2 more.

We measure against the reference the check itself brings: 4.5 to 1 for normal text and 3 to 1 for large text. We did not set it. We do not measure text that sits on an image or a gradient: the check cannot work out the background color, and those cases never get this far.

The measured colors, with their page

  • 2.72The text is #2f80fa on #d3dde3 · once on https://posthog.com/ · it says “context layer”
  • 2.49The text is #f54e00 on #e6d8bc · 2 times on https://posthog.com/self-driving · it says “built itself?”
  • 3.22The text is #f54e00 on #f6f5f0 · once on https://us.posthog.com/signup · it says “(what is this?)”
  • 2.12The text is #9ea096 on #e5e7e0 · 7 times on https://posthog.com/docs/cdp/sources · it says “Contents”
  • 2.12The text is #9ea096 on #e5e7e0 · 3 times on https://posthog.com/context-warehouse · it says “PostHog context warehouse”

About this check: Partial. Visible focus does not show in a still capture, so we did not check it.

If you decide to change it: Change one color in the stylesheet. We have not tested the change, so we do not know what else is affected.

On 9 of the 10 pages we reviewed, we found images without alt text.

F1 · Computed accessibility

Why it matters: A screen reader cannot describe them.

It appears on 9 of the 10 pages we reviewed. Among them: /, /self-driving, /context-warehouse. Plus 6 more.

at both widths

We found no alt attribute on those images. A decorative image is declared with alt="", and we do not count those here.

The count for each page

  • https://posthog.com/ · 6
  • https://posthog.com/self-driving · 2
  • https://posthog.com/context-warehouse · 2
  • https://posthog.com/pricing · 3
  • https://posthog.com/docs · 2
  • https://posthog.com/demo · 2
  • https://posthog.com/docs/cdp/sources · 736
  • https://posthog.com/product-analytics · 4
  • https://posthog.com/session-replay · 4

Where it is

img

About this check: Partial. Visible focus does not show in a still capture, so we did not check it.

If you decide to change it: One attribute per image. We have not tested the change, so we do not know what else is affected.

On 9 of the 10 pages we reviewed, there are external domains that load before anyone touches anything. On the page with the most, there are 6.

F6 · Third parties and consent

They showed up in the first load. We could not determine whether this page shows a consent notice, so we do not know whether any of this would have changed after answering it. If that matters for what you are going to decide, check it by hand before acting.

Among them: res.cloudinary.com, fast.wistia.com, browser.sentry-cdn.com. Plus 3 more.

It appears on 9 of the 10 pages we reviewed. Among them: /, /self-driving, /context-warehouse. Plus 6 more.

at both widths

The count for each page

  • https://posthog.com/ · 1
  • https://posthog.com/self-driving · 2
  • https://posthog.com/context-warehouse · 1
  • https://posthog.com/pricing · 1
  • https://posthog.com/docs · 1
  • https://posthog.com/demo · 6
  • https://posthog.com/docs/cdp/sources · 1
  • https://posthog.com/product-analytics · 1
  • https://posthog.com/session-replay · 1

Where it is

network

About this check: Partial. This check only covers the domains the page called while loading. We do not judge whether what the page does with those domains is lawful.

No fix proposed: this is a decision worth consulting on.

We found no search engine description on 1 of the 10 pages we reviewed.

F5 · Metadata and shareability

Why it matters: Google chooses on its own which snippet to show under the title.

It is on https://us.posthog.com/signup.

at both widths

We found no <meta name="description"> tag on those pages.

The count for each page

  • https://us.posthog.com/signup · 1

Where it is

head

If you decide to change it: One line in the page head. We have not tested the change, so we do not know what else is affected.

We found nothing on this page that says how it should look when shared.

F5 · Metadata and shareability

Why it matters: When the link is pasted into WhatsApp or LinkedIn, each one improvises the title and the image.

It is on https://us.posthog.com/signup.

at both widths

We found no Open Graph tags: og:title, og:description and og:image.

Where it is

head

If you decide to change it: Three lines in the page head. We have not tested the change, so we do not know what else is affected.

On 5 of the 10 pages we reviewed, there are headings that skip levels.

F1 · Computed accessibility

Why it matters: Anyone navigating by headings loses the thread of the document.

It appears on 5 of the 10 pages we reviewed. Among them: /, /self-driving, /docs/cdp/sources. Plus 2 more.

at both widths

We look at the order of the heading levels (h1, h2, h3…) as they appear in the document, and here there is a skip between levels. We do not judge what each heading says.

The count for each page

  • https://posthog.com/ · 1
  • https://posthog.com/self-driving · 1
  • https://posthog.com/docs/cdp/sources · 2
  • https://posthog.com/product-analytics · 1
  • https://posthog.com/session-replay · 1

Where it is

h1..h6

About this check: Partial. Visible focus does not show in a still capture, so we did not check it.

If you decide to change it: Change the level of the tag, not how it looks. We have not tested the change, so we do not know what else is affected.

All cases

The other cases: Attio · Linear · Notion · Paddle · Simple Analytics · Typeform · Umami

Provenance

The instrument this review was written with.

Artifact versionartifact.v12
Resolution baseCaptured
Captured2026-09-26T11:52:21.244Z
Page setcs-391bcf78-6440-4bf7-8ede-0a5d690958b6
Instrumentcopy-informe.v1 · spine seis-secciones.v1 · surface superficie.v1
Field definitioncenso-de-formularios.v1 · we do not count: hidden, submit, button, reset, image and the anti-spam tokens · the fields marked aria-hidden · the search fields: they do not ask for details about the person; they are a navigation control · the fields that appear while typing or in later steps: they are not guessed
Selection rulenot recorded

These versions identify the instrument, not the exact wording: the same version can cover later wording corrections.

Requested addresshttps://posthog.com/
ReadingRead on September 26, 2026. Sites change.

Examples made on public home pages. They imply no commercial relationship, engagement, validation or approval on the part of the brands analyzed.

If you own one of these sites and do not want its report here, write to us and we will take it down the same day. You do not have to explain why.