Your PostHog dashboard, on the wall.

A TRMNL plugin that mirrors one PostHog dashboard on an e-ink display. Sign in to PostHog, paste a dashboard URL, and its tiles appear in dashboard order, recalculated on every refresh.

Published in the TRMNL recipe catalog.

Full view on an OG Plus: four chart tiles showing delivery success rate, monthly active users, videos delivered per month and videos per active user, with the refresh time in the title bar

Rendered from a redacted sample dashboard with the plugin's own templates.

1 dashboardper plugin instance, any tile layout
6 tilesper page, up to 4 pages
3 scopesall read-only
US + EUPostHog Cloud regions
Four sizes

Fits a full screen or a corner of a mashup

Every view keeps the dashboard's tile order. Charts follow the dashboard's own date range and filters, reduced to at most 40 points and four series.

Half vertical400×480
Half vertical view: three chart tiles stacked, each with a headline value
Half horizontal800×240
Half horizontal view: three tiles in a strip, each a headline number above a framed sparkline, with +1 more in the title bar
Quadrant400×240
Quadrant view: one tile with a large 87.3% headline beside a framed sparkline
Full
The first two dashboard rows of the page, up to six tiles, in the dashboard's own arrangement.
Half views
The first three tiles. Horizontal turns charts into sparklines; vertical stacks them.
Quadrant
The first number tile on the page, or the first tile when there is none.
Install

Four steps, about two minutes

You need a TRMNL device and a PostHog Cloud account that can open the dashboard you want to show.

  1. Install the recipe

    In TRMNL, open Plugins, find Dashboards for PostHog in the recipe catalog (or open the recipe page) and click Install.

  2. Connect PostHog

    Click Connect PostHog, sign in, pick the organization and project, and approve read access to dashboards, insights and queries.

  3. Paste the dashboard URL

    Open the dashboard in PostHog and copy the address bar into Dashboard URL. The plugin reads three things from it. Pick the same project on the PostHog consent screen, because the project in the URL is the one that is read.

  4. Save and add it to a playlist

    The dashboard appears on the device at its next refresh. The plugin fetches every 15 minutes and asks PostHog to recalculate each insight on every fetch.

SettingDefaultWhat it does
Dashboard URLrequiredThe PostHog dashboard to mirror. Query strings and anchors are ignored.
Page1Each page is the next six tiles. To show tiles 7 to 12, add a second instance with page 2.
Show dashboard descriptionHidePrints the dashboard description under the title on the full view.
Tile 1 to 6 headlineAverageFor a time-series chart in that position, show the average of its points or the last point. The last point can be a period still in progress. Number tiles keep PostHog's value.
What renders

Trends insights, drawn for e-ink

Drawn on the device

  • Bold number
  • Line
  • Cumulative line
  • Bar
  • Stacked bar
  • Horizontal bar
  • Pie, as a donut

A bold number shows the change against the previous period when the insight compares periods. Pies keep the top five slices plus Other.

Shown as a named placeholder

  • Funnels
  • Retention
  • Paths
  • Lifecycle
  • Stickiness
  • SQL and tables
  • Web analytics
  • Error tracking

The tile keeps its place with the insight name and a hint to open it in PostHog. Text tiles are skipped and do not count towards the six.

Reading the title bar

Refreshed 23 Sep 15:21
When the plugin last fetched, in your timezone. Not the moment the screen repainted. With nothing after it, every visible tile came from the recalculation PostHog ran for that fetch.
Cached
At least one tile used PostHog's cached result because recalculation took too long. It usually catches up on the next fetch.
Some data unavailable
One or more insights returned no result. Open them in PostHog to check.
Page 2 of 3 · +4 more
Which block of six tiles this instance shows, and how many later tiles did not fit this view.

If the screen shows a message

Add a Dashboard URL to finish setup
Paste the dashboard URL in the plugin settings and save.
Dashboard URL not recognised
Paste the full address, including /project/…/dashboard/….
Dashboard not found
The connected account cannot open that dashboard, often because a different project was picked on the consent screen. Connect PostHog again and pick the project in the URL.
PostHog is not connected
Open the plugin settings and click Connect PostHog.
PostHog did not accept the connection
TRMNL retries on the next refresh. If it stays, connect PostHog again.
PostHog took too long to answer
Open the dashboard in PostHog once to warm it up, then wait for the next refresh.
Privacy and limits

Your data goes from PostHog to TRMNL, and nowhere else

Privacy

dashboard:readinsight:readquery:read
  • The author runs no server and never sees your dashboards or tokens. This site only hosts this page and the OAuth client description PostHog reads during sign-in.
  • Each installer connects their own PostHog account. TRMNL stores and refreshes the tokens.
  • Revoke access at any time in PostHog under account settings, Connected applications.

Limitations

  • One dashboard per plugin instance, six tiles per page, four pages.
  • No date range or filter override: charts use the dashboard's own.
  • A dashboard that has not been opened in a while may show cached values on the first refresh and catch up on the next one.
  • PostHog Cloud only. Self-hosted instances are not supported.