Skip to content

Featured image as OG - #21774

Merged
smallbrownbike merged 3 commits into
masterfrom
og-images-fix
Nov 2, 2026
Merged

smallbrownbike merged 3 commits into
masterfrom
og-images-fix

Conversation

@smallbrownbike

Copy link
Copy Markdown
Collaborator

New featured images already have the title on them, so drawing the title again on the OG image looks bad.

Changes

  • Posts use their featured image as the OG image by default
  • Older posts whose art has no title still get a generated OG image via ogImage: generated in frontmatter
  • Customer stories always use the featured image as their OG image

@github-actions

github-actions Bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Deploy preview

Status Details Updated (UTC)
🟢 Ready View preview Nov 02, 2026 01:48PM

Changed pages

Page Source
10,000 PRs a month is easy: How devex is evolving at PostHog contents/blog/10k-prs-a-month.md
PostHog raises $15 million Series B for open source product analytics contents/blog/15-million-series-b.md
CEO diary: The things I learned in 2022 contents/blog/2022-review.md
8 learnings from 1 year of agents – PostHog AI contents/blog/8-learnings-from-1-year-of-agents-posthog-ai.mdx
A non-coder's thoughts on an 'Everybody Codes' culture contents/blog/a-non-coders-thoughts-on-everybody-codes-culture.md
A non-coders thoughts on ‘Everybody Codes’ - Part Two contents/blog/a-non-coders-thoughts-on-everybody-codes-culture-part-two.md
What we learned from our first 400k Replay Vision scans contents/blog/a-scanner-that-watches-everything-sees-nothing.md
How to grow your AEO function (without losing your mind) contents/blog/aeo-advice.mdx
4,063 errors closed without a human opening PostHog – here's what we learned contents/blog/agents-closed-4063-errors.md
Are agents really killing UI? contents/blog/agents-killing-ui.mdx
AI is killing no-code experiments contents/blog/ai-is-killing-no-code-experiments.md
Being AI-native matters more than experience contents/blog/ai-native-hiring.md
Minimum viable AI observability: what to set up after shipping your first AI feature contents/blog/ai-observability-for-mvps.mdx
5 ways to monitor key metrics using PostHog alerts contents/blog/alerts-examples.mdx
We’ve decided to make less money [Part 2] contents/blog/analytics-pricing.md
5 essential tips for Customer Success teams on PostHog contents/blog/analytics-tips-for-customer-success-teams.md
5 analytics ideas for marketing teams using PostHog contents/blog/analytics-tips-for-marketing-teams.md
What we built at our sun-kissed Aruba hackathon contents/blog/aruba-hackathon.md
Enabling zero downtime data migrations for self-hosted users contents/blog/async-migrations.md
Automating a software company with GitHub Actions contents/blog/automating-a-software-company-with-github-actions.md
Introducing the Avo Inspector app contents/blog/avo-plugin-announcement.md
Behind the scenes of a PostHog hackathon contents/blog/behind-the-scenes-posthog-hackathon.md
The best feature flag software for developers, compared contents/blog/best-feature-flag-software-for-developers.mdx
The best Microsoft Clarity alternatives & competitors, compared contents/blog/best-microsoft-clarity-alternatives.mdx
The 7 best mobile app analytics tools contents/blog/best-mobile-app-analytics-tools.mdx

363 more changed pages are not listed.

@github-actions

github-actions Bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Vale prose linter → found 1017 errors, 7380 warnings, 385 suggestions in your markdown

Full report → · Copy the Job Summary code block into an LLM to batch-fix issues.

Note: Too many findings to show inline. See the Job Summary linked above.

File Errors Warnings Suggestions
contents/blog/10k-prs-a-month.md 1 10 0
contents/blog/15-million-series-b.md 7 13 0
contents/blog/2022-review.md 3 8 6
contents/blog/8-learnings-from-1-year-of-agents-posthog-ai.mdx 5 14 0
contents/blog/Introduction-to-self-service-analytics.md 3 5 0
contents/blog/a-non-coders-thoughts-on-everybody-codes-culture-part-two.md 6 3 0
contents/blog/a-non-coders-thoughts-on-everybody-codes-culture.md 2 1 0
contents/blog/a-scanner-that-watches-everything-sees-nothing.md 0 6 0
contents/blog/aeo-advice.mdx 1 20 2
contents/blog/agents-closed-4063-errors.md 0 8 0
contents/blog/agents-killing-ui.mdx 0 13 0
contents/blog/ai-is-killing-no-code-experiments.md 0 21 0
contents/blog/ai-native-hiring.md 2 12 0
contents/blog/ai-observability-for-mvps.mdx 0 25 0
contents/blog/alerts-examples.mdx 0 4 0
contents/blog/analytics-pricing.md 0 11 0
contents/blog/analytics-tips-for-customer-success-teams.md 6 7 0
contents/blog/analytics-tips-for-marketing-teams.md 5 10 0
contents/blog/aruba-hackathon.md 0 49 2
contents/blog/async-migrations.md 2 8 0
contents/blog/automating-a-software-company-with-github-actions.md 5 12 0
contents/blog/avo-plugin-announcement.md 2 3 0
contents/blog/behind-the-scenes-posthog-hackathon.md 0 4 0
contents/blog/best-feature-flag-software-for-developers.mdx 0 102 0
contents/blog/best-microsoft-clarity-alternatives.mdx 0 177 0
contents/blog/best-mobile-app-analytics-tools.mdx 0 123 1
contents/blog/best-open-source-ab-testing-tools.md 4 69 2
contents/blog/best-open-source-business-intelligence-tools.mdx 0 55 1
contents/blog/best-open-source-llm-observability-tools.md 0 29 0
contents/blog/best-open-source-session-replay-tools.md 4 74 0
contents/blog/brand.md 1 7 0
contents/blog/building-the-future-of-game-analytics-pureskill.mdx 0 11 4
contents/blog/calculating-events-from-users.md 0 9 1
contents/blog/cdp-vs-data-warehouse.md 0 47 0
contents/blog/ceo-diary-3.md 10 3 12
contents/blog/ceo-diary-5.md 14 11 2
contents/blog/ceo-diary-6.md 5 4 0
contents/blog/changelog-image-generator.mdx 1 4 0
contents/blog/changing-to-self-serve.md 5 4 3
contents/blog/clickhouse-announcement.md 3 4 0
contents/blog/clickhouse-materialized-columns.md 2 7 0
contents/blog/clickhouse-vs-bigquery.md 7 23 0
contents/blog/clickhouse-vs-druid.md 0 17 0
contents/blog/clickhouse-vs-elasticsearch.md 0 21 0
contents/blog/clickhouse-vs-postgres.md 11 28 1
contents/blog/clickhouse-vs-redshift.md 0 15 0
contents/blog/clickhouse-vs-snowflake.md 1 24 0
contents/blog/collaborating-on-posthog.md 1 7 0
contents/blog/company-survey.md 0 8 0
contents/blog/cookieless-analytics.md 5 3 0
contents/blog/correct-llm-code-generation.mdx 0 6 0
contents/blog/customer-facing-analytics-examples.md 4 11 0
contents/blog/customer-success-at-posthog.md 0 18 9
contents/blog/customer-support-at-posthog.md 10 12 0
contents/blog/data-management-feature.md 5 11 0
contents/blog/data-pipeline-pricing.md 2 7 0
contents/blog/data-warehouse-at-posthog.mdx 0 26 0
contents/blog/data-warehouse-launch.md 3 10 0
contents/blog/developer-marketing-questions.md 3 17 2
contents/blog/devtools-advice-agent-llm.md 1 6 0
contents/blog/dogfooding.md 8 11 0
contents/blog/drawing-hedgehogs.md 18 11 9
contents/blog/duckdb-vs-clickhouse.mdx 2 30 0
contents/blog/duckdb-vs-postgres.mdx 0 18 0
contents/blog/duckdb-vs-sqlite.mdx 0 18 0
contents/blog/dynamic-open-graph-images.md 8 19 0
contents/blog/embedded-analytics-provisioning-api.md 0 9 0
contents/blog/envoy-wizard-llm-agent.mdx 0 7 0
contents/blog/essential-posthog-apps.md 4 14 1
contents/blog/even-faster-more-reliable-flags.md 2 8 0
contents/blog/events-you-should-track-with-posthog.md 2 4 0
contents/blog/everything-is-build-mode.md 0 3 0
contents/blog/experiments.md 7 17 0
contents/blog/feature-flags-as-a-service.md 0 22 0
contents/blog/feedback-loops.md 0 15 0
contents/blog/first-10-paying-customers.md 19 15 5
contents/blog/forward-deployed-engineer.md 2 36 0
contents/blog/future-of-support-is-human.md 0 4 0
contents/blog/github-cms.md 0 8 0
contents/blog/give-back-friday-2021.md 2 10 1
contents/blog/google-analytics-cost.md 0 15 0
contents/blog/google-analytics-to-posthog.md 2 9 0
contents/blog/google-optimize-alternatives.md 0 58 0
contents/blog/group-analytics-launch.md 0 8 0
contents/blog/hacktoberfest-2020.md 0 7 0
contents/blog/helping-engineers-to-product.md 0 10 0
contents/blog/hightouch-posthog-reverse-etl-integration.md 0 27 0
contents/blog/hogmail-14.md 0 6 2
contents/blog/hogmail-15.md 0 12 1
contents/blog/hogmail-16.md 0 10 0
contents/blog/hogmail-17.md 0 10 1
contents/blog/hogmail-18.md 0 5 2
contents/blog/hogmail-19.md 0 11 0
contents/blog/hogmail-20.md 0 7 4
contents/blog/hogmail-21.md 0 8 4
contents/blog/hogmail-22.md 0 11 0
contents/blog/hosthog-blog.md 4 12 1
contents/blog/how-posthog-uses-logs.md 1 16 10
contents/blog/how-secondaries-actually-work.md 19 7 0
contents/blog/how-to-do-user-segmentation.md 1 12 1
contents/blog/how-to-find-and-fix-app-onboarding-drop-off.mdx 7 34 0
contents/blog/how-to-get-hired-marketing.md 0 9 21
contents/blog/how-to-measure-product-engagement.md 0 6 0
contents/blog/how-to-work-out-what-users-need.md 8 8 1
contents/blog/how-we-built-an-app-server.md 0 15 0
contents/blog/how-we-built-email-onboarding.md 3 13 0
contents/blog/how-we-improved-feature-flags-resiliency.md 0 18 0
contents/blog/how-we-turned-clickhouse-into-our-eventmansion.mdx 4 8 0
contents/blog/improving-posthog-deployments.md 2 7 0
contents/blog/intro-phil-leggetter.md 0 10 6
contents/blog/introducing-hogql.md 0 13 0
contents/blog/introducing-housewatch.md 0 11 0
contents/blog/introducing-notebooks.md 1 3 0
contents/blog/is-google-analytics-hipaa-compliant.md 0 5 0
contents/blog/is-google-analytics-illegal-microsite.md 2 21 1
contents/blog/joe-martin-intro.md 3 6 8
contents/blog/joe-os-analytics.md 10 8 0
contents/blog/karpathy-autoresearch-query-engine-bug.md 0 20 0
contents/blog/launch-week-universe-of-new-features.md 1 19 0
contents/blog/leo-anthias-interview.md 5 18 19
contents/blog/llm-analytics-clustering-how-it-works.mdx 31 26 0
contents/blog/local-flag-evals-rust.md 0 10 0
contents/blog/logs-beta.md 0 12 0
contents/blog/logs-ga.md 0 16 0
contents/blog/machine-copy-paste-mcp-intro.mdx 0 4 0
contents/blog/making-claude-cowork-actually-useful.md 23 53 0
contents/blog/meetings.mdx 7 5 0
contents/blog/mind-the-context-gap.mdx 0 8 0
contents/blog/minimum-viable-product-marketing.md 2 8 0
contents/blog/missing-recordings.md 1 11 3
contents/blog/mobile-session-replay.md 0 27 0
contents/blog/modern-data-stack-sucks.md 1 21 0
contents/blog/multi-modal-llm-user-behavior-analysis.mdx 17 14 0
contents/blog/mykonos-hackathon.md 1 23 1
contents/blog/new-vp-nailing-funnels.md 2 7 1
contents/blog/nov-24-shai-hulud-attack-post-mortem.md 5 25 2
contents/blog/null-handling-hogql.md 0 8 0
contents/blog/on-doing-more-weird.mdx 6 4 0
contents/blog/open-source-stack-for-engineers.md 12 27 0
contents/blog/optimize-to-posthog.md 0 19 0
contents/blog/optimizing-agent-cost.mdx 5 15 0
contents/blog/persons-on-events.md 3 3 0
contents/blog/pick-cofounder.md 10 7 3
contents/blog/pm-pmm-collaboration.md 1 9 1
contents/blog/posthog-alternatives.mdx 0 147 0
contents/blog/posthog-altinity-announce.md 2 3 0
contents/blog/posthog-announces-9-million-dollar-series-A.md 1 15 0
contents/blog/posthog-as-a-dev-tool.mdx 1 9 0
contents/blog/posthog-cloud-eu.md 0 13 0
contents/blog/posthog-explained-permissions-and-projects.md 4 7 0
contents/blog/posthog-marketing.md 0 15 0
contents/blog/posthog-v0-integration.md 0 6 0
contents/blog/posthog-vs-amplitude.mdx 1 84 1
contents/blog/posthog-vs-ga4.mdx 0 43 0
contents/blog/posthog-vs-mixpanel.mdx 0 101 0
contents/blog/posthog-wallpapers.md 0 36 0
contents/blog/product-engineer-tools.md 0 17 0
contents/blog/product-engineer-vs-product-manager.md 0 6 0
contents/blog/product-engineer-vs-software-engineer.md 0 3 0
contents/blog/raising-3m-for-os.md 51 45 0
contents/blog/redesigned-nav-menu.mdx 0 7 1
contents/blog/replay-vision.md 0 11 0
contents/blog/repositioning-posthog.mdx 5 17 0
contents/blog/rome-hackathon.md 0 11 1
contents/blog/running-content-at-posthog.md 12 11 0
contents/blog/scarf-open-source-projects.md 8 6 1
contents/blog/secrets-of-posthog-query-performance.md 4 9 0
contents/blog/seed-grow-scale-devrel.mdx 4 22 1
contents/blog/self-driving-loops.mdx 0 12 0
contents/blog/self-driving-product.mdx 0 6 0
contents/blog/send-love-to-open-source.md 1 7 0
contents/blog/session-recording-performance.md 0 41 1
contents/blog/session-replay-pricing.md 0 16 1
contents/blog/session-replays-opening-pull-requests.md 0 6 0
contents/blog/sessions-removal.md 0 1 0
contents/blog/slack-app-beta.md 0 26 11
contents/blog/slack-closure.md 2 4 0
contents/blog/social-media-metrics-are-all-bad.md 0 4 0
contents/blog/speeding-up-posthog-builds-with-depot.md 2 8 1
contents/blog/sql-parser.md 0 14 0
contents/blog/standup-bot-revenge.mdx 46 25 0
contents/blog/startup-interview-questions.md 1 0 0
contents/blog/startup-job-titles.md 12 7 6
contents/blog/stop-ai-slop.md 0 6 0
contents/blog/stripe-projects.md 0 3 0
contents/blog/sunsetting-helm-support-posthog.md 1 6 0
contents/blog/temporal-exports.md 0 20 0
contents/blog/testing-ai-agents.md 0 4 0
contents/blog/the-posthog-array-1-0-10.md 0 10 0
contents/blog/the-posthog-array-1-0-11.md 0 18 2
contents/blog/the-posthog-array-1-0-8.mdx 0 10 1
contents/blog/the-posthog-array-1-0-9.md 0 8 1
contents/blog/the-posthog-array-1-1-0.md 1 22 0
contents/blog/the-posthog-array-1-10-0.md 11 15 1
contents/blog/the-posthog-array-1-11-0.md 3 7 0
contents/blog/the-posthog-array-1-12-0.md 2 15 0
contents/blog/the-posthog-array-1-13-0.md 7 14 4
contents/blog/the-posthog-array-1-14-0.md 0 21 1
contents/blog/the-posthog-array-1-15-0.md 1 169 1
contents/blog/the-posthog-array-1-16-0.md 0 92 2
contents/blog/the-posthog-array-1-17-0.md 2 131 0
contents/blog/the-posthog-array-1-18-0.md 1 143 0
contents/blog/the-posthog-array-1-19-0.md 0 149 2
contents/blog/the-posthog-array-1-2-0.md 1 8 1
contents/blog/the-posthog-array-1-20-0.md 3 141 3
contents/blog/the-posthog-array-1-21-0.mdx 3 286 2
contents/blog/the-posthog-array-1-22-0.mdx 2 159 2
contents/blog/the-posthog-array-1-23-0.mdx 3 94 0
contents/blog/the-posthog-array-1-24-0.mdx 4 235 1
contents/blog/the-posthog-array-1-25-0.mdx 3 27 4
contents/blog/the-posthog-array-1-26-0.md 1 45 1
contents/blog/the-posthog-array-1-27-0.md 0 28 2
contents/blog/the-posthog-array-1-28-0.md 0 17 1
contents/blog/the-posthog-array-1-29-0.md 8 26 0
contents/blog/the-posthog-array-1-3-0.md 1 15 1
contents/blog/the-posthog-array-1-30-0.md 1 16 0
contents/blog/the-posthog-array-1-31-0.md 1 14 0
contents/blog/the-posthog-array-1-32-0.md 3 8 0
contents/blog/the-posthog-array-1-33-0.md 2 11 0
contents/blog/the-posthog-array-1-34-0.md 9 9 0
contents/blog/the-posthog-array-1-35-0.md 4 11 0
contents/blog/the-posthog-array-1-36-0.mdx 5 12 0
contents/blog/the-posthog-array-1-37-0.mdx 3 7 0
contents/blog/the-posthog-array-1-38-0.mdx 2 18 0
contents/blog/the-posthog-array-1-39-0.mdx 3 20 1
contents/blog/the-posthog-array-1-4-0.md 0 10 0
contents/blog/the-posthog-array-1-40-0.md 1 8 0
contents/blog/the-posthog-array-1-41-0.md 4 12 0
contents/blog/the-posthog-array-1-42-0.md 2 12 0
contents/blog/the-posthog-array-1-43-0.md 2 8 0
contents/blog/the-posthog-array-1-5-0.md 0 8 0
contents/blog/the-posthog-array-1-6-0.md 3 4 2
contents/blog/the-posthog-array-1-7-0.md 9 9 0
contents/blog/the-posthog-array-1-8-0.md 6 7 0
contents/blog/the-posthog-array-1-9-0.md 16 15 0
contents/blog/the-posthog-array-1.md 0 10 1
contents/blog/the-state-of-plugins.md 1 3 2
contents/blog/traces-beta.mdx 0 5 0
contents/blog/track-your-website-with-posthog.md 3 8 0
contents/blog/transparent-enterprise-pricing.md 0 7 3
contents/blog/turning-engineers-into-product-people.md 12 7 0
contents/blog/uh-i-like-my-job.md 0 4 2
contents/blog/untangling-rayon-and-tokio.md 2 34 0
contents/blog/using-posthog.md 1 33 0
contents/blog/vercel-integration.md 0 10 0
contents/blog/welcome-to-deskhog.mdx 0 1 0
contents/blog/what-if-your-product-built-itself.mdx 0 10 0
contents/blog/what-is-a-context-warehouse.md 0 20 0
contents/blog/what-is-a-feature-flag.mdx 0 75 0
contents/blog/what-is-a-growth-engineer.md 0 12 0
contents/blog/what-is-a-product-engineer.md 0 12 0
contents/blog/what-is-a-scout.mdx 2 58 0
contents/blog/what-is-ai-observability.mdx 0 59 0
contents/blog/what-is-personal-data-pii.md 1 5 0
contents/blog/what-is-product-analytics.md 0 39 0
contents/blog/what-is-sso-and-saml.md 5 2 0
contents/blog/what-recruiters-see.md 4 9 0
contents/blog/why-attacking-competitors-is-dumb.md 1 1 0
contents/blog/why-i-ditched-google-analytics-for-posthog.md 0 5 2
contents/blog/why-infra-is-our-competitive-advantage.md 0 3 0
contents/blog/why-os.mdx 0 2 0
contents/blog/why-product-engineering-is-so-fun.md 0 3 0
contents/blog/why-small-teams-crush-tiger-teams.mdx 0 1 0
contents/blog/why-we-killed-our-ai-product-assistant.mdx 2 9 2
contents/blog/why-we-made-surveys.md 1 18 0
contents/blog/why-we-raised-a-15m-series-b-ahead-of-schedule.md 0 1 0
contents/blog/why-we-rebuilt-our-data-warehouse.md 1 13 0
contents/blog/why-you-should-use-a-data-warehouse.md 2 21 3
contents/blog/workflows-alpha.md 6 5 0
contents/blog/workflows-beta.md 0 3 1
contents/blog/workflows-ga.md 0 8 0
contents/blog/wtf-is-context-engineering.md 0 15 0
contents/blog/yc-2-years-on.md 14 9 6
contents/blog/yc-top-companies.md 2 3 0
contents/blog/your-lifecycle-emails-are-wrong.md 0 3 0
contents/founders/actual-marketing-budget-2026.md 2 10 0
contents/founders/actual-marketing-budget.md 4 8 0
contents/founders/asynchronous-remote-companies.md 0 4 0
contents/founders/ceo-diary-1.md 4 7 0
contents/founders/ceo-diary-2.md 0 3 0
contents/founders/ceo-diary-4.md 10 7 4
contents/founders/cracked-manifesto.md 1 6 0
contents/founders/creating-ideal-customer-profile.md 1 4 0
contents/founders/dev-marketing-for-startups.md 0 7 0
contents/founders/dev-marketing-paid-ads.md 6 17 0
contents/founders/early-stage-analytics.md 0 13 0
contents/founders/early-stage-startup-hiring-strategy.md 3 3 0
contents/founders/equity-share-options-explained.md 0 6 5
contents/founders/features-sell.md 0 9 0
contents/founders/first-1000-users.md 0 13 0
contents/founders/first-ops-hire.md 0 6 0
contents/founders/growth-metrics-for-startups.md 2 5 0
contents/founders/hacker-news-premortem.md 5 6 0
contents/founders/how-come-we-ship-so-much.md 0 15 1
contents/founders/how-to-buy-software-enterprise.md 1 15 0
contents/founders/how-to-run-a-transparent-company.md 4 5 0
contents/founders/how-to-treat-your-pricing-like-a-product.md 1 10 1
contents/founders/inflated-risk-seems-riskier.md 9 6 2
contents/founders/learnings-from-elon.md 0 16 8
contents/founders/making-something-people-want.md 2 6 2
contents/founders/measure-product-market-fit.md 1 26 1
contents/founders/multi-product-pricing.md 0 15 0
contents/founders/negotiate-software-better.md 7 5 2
contents/founders/north-star-metrics.md 1 12 0
contents/founders/planning-a-company-offsite.md 0 4 5
contents/founders/posthog-first-five.md 0 9 37
contents/founders/postmortem-rebrand.md 14 10 6
contents/founders/pricing-lessons.md 12 5 0
contents/founders/product-360.md 9 5 1
contents/founders/product-at-posthog.md 5 11 0
contents/founders/product-led-growth.md 5 14 1
contents/founders/recommended-reading.md 17 46 14
contents/founders/registering-trademarks.md 6 3 0
contents/founders/startup-finance-without-finance.md 1 25 0
contents/founders/startup-ops-toolkit.md 2 31 1
contents/founders/startup-sales-strategy.md 0 4 1
contents/founders/stop-treating-engineers-differently.md 5 6 3
contents/founders/story-about-pivots.md 15 24 4
contents/founders/using-vc-carefully.md 1 6 1
contents/founders/vc-or-bootstrap.md 1 12 0
contents/founders/what-motivates-me.md 2 2 1
contents/founders/what-to-ask-in-interviews.md 2 4 0
contents/founders/write-great-job-ads.md 1 4 0
contents/founders/writing-for-developers.md 8 8 0
contents/handbook/content/metadata.md 10 11 0
contents/handbook/engineering/posthog-com/developing-the-website.md 14 49 0
contents/product-engineers/10x-engineers-do-user-interviews.md 0 15 1
contents/product-engineers/aarrr-pirate-funnel.md 0 17 0
contents/product-engineers/ab-testing-examples.md 0 29 0
contents/product-engineers/ab-testing-guide-for-engineers.md 0 3 0
contents/product-engineers/ab-testing-mistakes.md 0 16 0
contents/product-engineers/activation-metrics.mdx 0 10 0
contents/product-engineers/behavioral-analytics.mdx 3 14 0
contents/product-engineers/churn-rate-vs-retention-rate.md 2 17 1
contents/product-engineers/customer-retention-metrics.md 0 45 0
contents/product-engineers/decouple-deployment-from-release.md 0 9 0
contents/product-engineers/dogfooding.md 0 43 0
contents/product-engineers/feature-flag-benefits-use-cases.md 0 42 0
contents/product-engineers/feature-flags-vs-configuration.md 0 19 0
contents/product-engineers/fixing-growth-problems.md 0 21 3
contents/product-engineers/github-gitlab-feature-flags.md 0 30 0
contents/product-engineers/growth-loops.md 0 18 0
contents/product-engineers/guardrail-metrics.md 0 9 0
contents/product-engineers/how-to-create-user-personas.md 1 10 0
contents/product-engineers/how-to-do-ab-testing.md 0 6 0
contents/product-engineers/how-to-start-a-growth-team.md 0 7 9
contents/product-engineers/interview-snapshot-guide.md 0 2 0
contents/product-engineers/llm-product-metrics.md 0 3 0
contents/product-engineers/measuring-feature-success.md 1 20 11
contents/product-engineers/mobile-app-metrics-kpis.md 0 13 0
contents/product-engineers/nps-vs-csat-vs-ces.md 0 43 0
contents/product-engineers/product-health-metrics.md 0 2 0
contents/product-engineers/product-survey-questions.md 0 23 0
contents/product-engineers/real-user-monitoring.md 0 9 0
contents/product-engineers/running-group-targeted-ab-tests.md 0 21 0
contents/product-engineers/sql-for-analytics.md 0 2 0
contents/product-engineers/testing-in-production.md 0 12 0
contents/product-engineers/trunk-based-development.md 0 8 0
contents/product-engineers/what-is-distributed-tracing.md 0 8 0
contents/product-engineers/what-is-multivariate-testing-examples.md 0 7 0
contents/spotlight/startup-alignwith.md 3 22 3
contents/spotlight/startup-before-sunset-ai.md 3 23 1
contents/spotlight/startup-bugprove.md 3 37 3
contents/spotlight/startup-documenso.md 6 29 0
contents/spotlight/startup-golioth.md 4 19 2
contents/spotlight/startup-inlang.md 0 8 1
contents/spotlight/startup-krea.md 5 12 4
contents/spotlight/startup-langfuse.md 3 7 0
contents/spotlight/startup-puzzle.md 4 6 0
contents/spotlight/startup-risotto.md 1 7 2
contents/spotlight/startup-tigris.md 3 5 1
contents/spotlight/startup-unified.md 2 7 1
contents/tutorials/analyze-surveys-with-chatgpt.md 0 8 0
contents/tutorials/angular-analytics.md 1 11 0
contents/tutorials/angular-surveys.md 0 9 0
contents/tutorials/array-filter-breakdown.md 0 2 0
contents/tutorials/astro-surveys.md 0 9 0
contents/tutorials/complete-workflows-guide.md 0 24 1
contents/tutorials/cookieless-tracking.md 0 15 0
contents/tutorials/nextjs-surveys.md 0 9 0
contents/tutorials/redirect-testing.md 0 7 0
contents/tutorials/remix-surveys.md 0 10 0
contents/tutorials/svelte-surveys.md 0 8 0
contents/tutorials/understand-ai-agent-performance.mdx 0 4 0
contents/tutorials/vue-surveys.md 1 10 0

@github-actions

github-actions Bot commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Bundle report

Total JS (gzip)

10.26 MiB (+0.0 KiB / +0.0%)

Eager graph (modules shipped in each entrypoint's initial chunks)

Entrypoint Eager size Budget Modules
✅ app 20.89 MiB (+0.9 KiB / +0.0%) report-only 2119
Largest modules in the app closure
Module Size
./src/data/mcp-tools.json 1467.7 KiB
css ./node_modules/.pnpm/css-loader@5.2.7_webpack@5.101.3/node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[1]!./node_modules/.pnpm/postcss-loader@4.3.0_postcss@8.5.6_webpack@5.101.3/node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[8].oneOf[1].use[2]!./src/styles/global.css 838.0 KiB
./src/components/Stickers/Stickers.tsx 696.4 KiB
./node_modules/.pnpm/@posthog+brand@0.13.0_react@18.3.1/node_modules/@posthog/brand/dist/generated/hoggies/svg/x-ray.mjs 481.2 KiB
./node_modules/.pnpm/@posthog+brand@0.13.0_react@18.3.1/node_modules/@posthog/brand/dist/generated/hoggies/svg/trenchcoat.mjs 450.8 KiB
./node_modules/.pnpm/rehype-raw@7.0.0/node_modules/rehype-raw/lib/index.js + 29 modules 395.1 KiB
./node_modules/.pnpm/@posthog+brand@0.13.0_react@18.3.1/node_modules/@posthog/brand/dist/generated/hoggies/svg/im-the-driver.mjs 385.8 KiB
./src/hooks/useCustomers.tsx + 61 modules 381.8 KiB
./node_modules/.pnpm/@posthog+brand@0.13.0_react@18.3.1/node_modules/@posthog/brand/dist/generated/hoggies/svg/tourist.mjs 364.6 KiB
./node_modules/.pnpm/@posthog+icons@0.36.6_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.es.js 354.8 KiB
./node_modules/.pnpm/react-markdown@8.0.7_@types+react@16.14.66_react@18.3.1/node_modules/react-markdown/lib/react-markdown.js + 88 modules 351.4 KiB
./src/components/ProductComparisonTable/index.tsx + 130 modules 314.3 KiB
./node_modules/.pnpm/framer-motion@14.0.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/framer-motion/dist/es/render/components/motion/proxy.mjs + 126 modules 287.2 KiB
./node_modules/.pnpm/@posthog+brand@0.13.0_react@18.3.1/node_modules/@posthog/brand/dist/generated/hoggies/svg/doll-house.mjs 284.1 KiB
./node_modules/.pnpm/cloudinary-core@2.14.0_lodash@4.17.21/node_modules/cloudinary-core/cloudinary-core.js 281.9 KiB

Eager-graph budgets are report-only until a baseline is established. Sizes are gzip of public/**/*.js; eager size is webpack module source bytes for the modules actually shipped in the entrypoint's initial chunks (post-tree-shake).

@andyvan-ph andyvan-ph moved this from Backlog to Awaiting review in PostHog.com planning Nov 2, 2026
@andyvan-ph andyvan-ph moved this from Awaiting review to Ready to be merged in PostHog.com planning Nov 2, 2026
@andyvan-ph andyvan-ph moved this from Ready to be merged to Awaiting review in PostHog.com planning Nov 2, 2026
@smallbrownbike
smallbrownbike merged commit 27dc662 into master Nov 2, 2026
21 checks passed
@smallbrownbike
smallbrownbike deleted the og-images-fix branch November 2, 2026 21:37
@github-project-automation github-project-automation Bot moved this from Awaiting review to Done in PostHog.com planning Nov 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants