• Product
  • Pricing
  • Docs
  • Using PostHog
  • Community
  • Company
  • Login
  • Home
  • CEO diaries
    • After the HN launch
    • Remote companies can be too asynchronous
    • The time before YC
    • Winning from the back - late mover advantage
    • Optimize for not breaking up with your co-founder
    • Cancer and revenue - the latest board meeting
    • "How come your website is so nice?"
    • Things I learned last year
    • Our new objective: Nail Self Serve
    • How we found our Ideal Customer Profile
    • Tell me about features, not benefits
    • The magic of a Hacker News Pre-Mortem
    • How to run a transparent startup
    • How we justified quitting our jobs and financing PostHog early on
    • How we made something people want
    • Moving to San Francisco
    • Pivot to PostHog
    • Counterintuitive lessons about our pricing
    • I used to think you don't need product people. I was wrong.
    • How we raised $3M for an open source project
    • A story about pivots
    • The YC Interview
    • Raising money is less stressful than bootstrapping
    • What motivates me as a CEO
    • The really important job interview questions engineers should ask (but don't)
    • Writing for developers
    • Reflecting on YC, 2 years on
  • Company & culture
    • How we do meetings at PostHog
  • Comparisons
    • PostHog vs Matomo
    • PostHog vs Amplitude
    • Why I ditched Google Analytics and Mixpanel for PostHog
  • Engineering
    • Enabling zero downtime data migrations for self-hosted users
    • Automating a software company with GitHub Actions
    • How to speed up ClickHouse queries using materialized columns
    • In-depth: ClickHouse vs PostgreSQL
    • Setting up super fast Cypress tests on GitHub Actions
    • How I learned to love feedback loops (and make better products)
    • Frontend filters & backend SQL - A chat with Eric Duong, Sam Winslow, James Greenhill, and Buddy Williams
    • PostHog Joins Hacktoberfest 2020
    • How PostHog built an app server (from MVP to billions of events)
    • How we’re making PostHog deployments easier
    • Solving the mystery of PostHog’s missing session recordings
    • I used to think you don't need product people. I was wrong.
    • The secrets of PostHog query performance
    • Benchmarking the impact of session recording on performance
    • The state of plugins on PostHog
    • We ship whenever
  • General
    • Setting up super fast Cypress tests on GitHub Actions
    • How we designed the PostHog mascot
    • Why you may not need a sales team
    • A story about pivots
  • Guides
    • Introduction to self-service analytics
    • Building an AARRR pirate funnel (how and why)
    • 5 essential tips for Customer Success teams on PostHog
    • 5 analytics ideas for marketing teams using PostHog
    • Automating a software company with GitHub Actions
    • The most useful B2B SaaS product metrics
    • The 7 best GDPR-compliant analytics tools
    • The best HIPAA-compliant A/B testing tools
    • The 5 best free and open-source A/B testing tools
    • The 4 best HIPAA-compliant analytics tools
    • The best open-source analytics and data tools
    • Open source (and self-hosted) alternatives to Hotjar & FullStory
    • The two ways to estimate your monthly event usage
    • How to speed up ClickHouse queries using materialized columns
    • In-depth: ClickHouse vs PostgreSQL
    • Google is about to make it a lot harder to track website and app users without third-party cookies
    • Setting up super fast Cypress tests on GitHub Actions
    • 5 essential PostHog apps for new users
    • 5 events all teams should track with PostHog
    • What launching Experimentation taught us about running effective A/B tests
    • How to get the first 10 paying customers for your devtool company (and other customer acquisition tips)
    • The best GA4 alternatives for apps and websites
    • How to harness the awesome power of growth loops
    • What is user segmentation?
    • How to measure product engagement
    • How to achieve B2B product market fit
    • How to work out what your users really need
    • How we do hiring & HR at PostHog
    • How we turned ClickHouse into our event mansion
    • An introduction to customer retention
    • Is Google Analytics HIPAA compliant?
    • Finding your North Star metric and why it matters
    • How we monetized our open source devtool
    • Building an open source data stack
    • How to plan a killer company offsite in just 8 weeks
    • Permissions and projects in PostHog, explained
    • How (and why) our marketing team uses PostHog
    • PostHog vs Matomo
    • PostHog vs Amplitude
    • Product engineer vs software engineer: what's the difference?
    • Don’t bother securing your trademarks in the beginning
    • How to seed, grow, and scale Developer Relations (and how we're doing it at PostHog)
    • The ops toolkit for early-stage startups
    • How (and why) to track your website with PostHog
    • 22 ways PostHog makes it easier to build great products
    • What is a product engineer (and why they're awesome)
    • A simple guide to personal data and PII
    • An introduction to product analytics and how it works
    • What is SSO and why you should enable it for PostHog
    • The 3 critical reasons companies choose self-hosted analytics
  • HogMail
    • HogMail #14
    • HogMail #15
    • HogMail #16
    • HogMail #17: The personal traits that can't be taught
    • HogMail #18: What can SaaS learn from the New York Times?
  • Inside PostHog
    • PostHog raises $15 million Series B for open source product analytics
    • A non-coders thoughts on ‘Everybody Codes’ - Part Two
    • A non-coder's thoughts on an 'Everybody Codes' culture
    • After the HN launch
    • Remote companies can be too asynchronous
    • The time before YC
    • How PostHog uses Wren to offset carbon emissions during offsites
    • Winning from the back - late mover advantage
    • Optimize for not breaking up with your co-founder
    • Cancer and revenue - the latest board meeting
    • "How come your website is so nice?"
    • Things I learned last year
    • Our new objective: Nail Self Serve
    • How we found our Ideal Customer Profile
    • How we do customer support at our open source devtool company
    • The importance of dogfooding - Why product managers should use their product as much as their users
    • How we designed the PostHog mascot
    • Using Gatsby and Puppeteer to create dynamic Open Graph images
    • Creating an employee-friendly startup share option scheme
    • Tell me about features, not benefits
    • How I learned to love feedback loops (and make better products)
    • The magic of a Hacker News Pre-Mortem
    • HostHogs - free drinks, free pizza and frequently asked questions
    • How to run a transparent startup
    • How we do hiring & HR at PostHog
    • How PostHog built an app server (from MVP to billions of events)
    • How we turned ClickHouse into our event mansion
    • How we justified quitting our jobs and financing PostHog early on
    • Introducing Phil Leggetter, our new head of Developer Relations
    • Using Google Analytics was deemed 'illegal' in some EU countries. We built a microsite in 48 hours to capitalize on the news.
    • Introducing Joe Martin - Our first Product Marketer
    • How we made something people want
    • How we do meetings at PostHog
    • Solving the mystery of PostHog’s missing session recordings
    • Moving to San Francisco
    • How PostHog's new VP focused the company on nailing funnels in his first week
    • An engineer's guide to picking a cofounder
    • Pivot to PostHog
    • How to plan a killer company offsite in just 8 weeks
    • PostHog raises $12 million in funding led by GV and Y Combinator
    • What we learned about hiring from our first five employees
    • How (and why) our marketing team uses PostHog
    • How we rebranded PostHog in four weeks - a postmortem
    • Counterintuitive lessons about our pricing
    • I used to think you don't need product people. I was wrong.
    • What's the true role of a product team at an engineering-led organization?
    • Building an all-remote company from scratch
    • How we raised $3M for an open source project
    • All the cool things we built at our Rome hackathon
    • Content marketing strategy for devtool companies - How we do it at PostHog
    • How to seed, grow, and scale Developer Relations (and how we're doing it at PostHog)
    • Benchmarking the impact of session recording on performance
    • Speeding up PostHog builds with Depot
    • How to run finance at your startup without hiring a finance person
    • How to choose job titles in your early stage startup
    • Startups, stop treating engineers like a different species
    • The ops toolkit for early-stage startups
    • A story about pivots
    • The YC Interview
    • Why we ditched ‘talk to sales’ for transparent pricing
    • Raising money is less stressful than bootstrapping
    • What motivates me as a CEO
    • The really important job interview questions engineers should ask (but don't)
    • Why I ditched Google Analytics and Mixpanel for PostHog
    • Why infrastructure is a competitive advantage for us
    • Why we raised a $15m Series B ahead of schedule
    • Writing for developers
    • Reflecting on YC, 2 years on
    • YC adds PostHog to top valued companies for July 2021
  • Launch week
    • Introducing Collaboration for PostHog
    • Introducing Data Management for PostHog
    • What launching Experimentation taught us about running effective A/B tests
    • How we’re making PostHog deployments easier
    • PostHog Launch Week I: A Universe of New Features
    • The secrets of PostHog query performance
  • Open source
    • The Early Days of GitLab - A Chat with Sid Sijbrandij
    • The 5 best free and open-source A/B testing tools
    • The 6 best free and open-source feature flag tools
    • The best open-source analytics and data tools
    • Open source (and self-hosted) alternatives to Hotjar & FullStory
    • How we do customer support at our open source devtool company
    • How I learned to love feedback loops (and make better products)
    • PostHog Joins Hacktoberfest 2020
    • Give Back Friday with PostHog
    • Building an open source data science publishing platform - An interview with Datapane CEO, Leo Anthias
    • How we monetized our open source devtool
    • Open source is eating SaaS
    • Building an open source data stack
    • Should open source projects track you?
    • PostHog vs Amplitude
    • How we raised $3M for an open source project
    • Why open-source projects are essential for large businesses
    • Send love to open-source projects on Valentine's Day
    • Speeding up PostHog builds with Depot
    • The 3 critical reasons companies choose self-hosted analytics
  • PostHog Academy
    • What is user segmentation?
    • How to measure product engagement
    • How to achieve B2B product market fit
    • How to work out what your users really need
    • An introduction to customer retention
    • An introduction to product analytics and how it works
  • Privacy
    • The 7 best GDPR-compliant analytics tools
    • The best HIPAA-compliant A/B testing tools
    • The 4 best HIPAA-compliant analytics tools
    • Google is about to make it a lot harder to track website and app users without third-party cookies
    • A new 'Privacy Shield' won't solve big tech's GDPR problem
    • Is Google Analytics HIPAA compliant?
    • A simple guide to personal data and PII
  • Product analytics
    • Introduction to self-service analytics
    • Building an AARRR pirate funnel (how and why)
    • The two ways to estimate your monthly event usage
    • How to harness the awesome power of growth loops
    • What is user segmentation?
    • How to measure product engagement
    • How to achieve B2B product market fit
    • How to work out what your users really need
    • An introduction to customer retention
    • Is autocapture ‘still’ bad?
    • Finding your North Star metric and why it matters
    • How PostHog's new VP focused the company on nailing funnels in his first week
    • What's the true role of a product team at an engineering-led organization?
    • How to turn your engineers into product people
    • 22 ways PostHog makes it easier to build great products
    • An introduction to product analytics and how it works
  • Product updates
    • Why we're giving away 100 times more cloud usage, free
    • Enabling zero downtime data migrations for self-hosted users
    • Introducing the Avo Inspector app
    • We just made PostHog Open Source 1000x more scalable via ClickHouse
    • Introducing Collaboration for PostHog
    • Introducing Data Management for PostHog
    • What launching Experimentation taught us about running effective A/B tests
    • Group Analytics is now available in PostHog
    • You can now reverse ETL into PostHog with Hightouch
    • How we’re making PostHog deployments easier
    • PostHog Launch Week I: A Universe of New Features
    • How we’re improving performance by combining persons and events
    • PostHog teams up with Altinity
    • Introducing PostHog Cloud EU
    • Restack joins the PostHog Marketplace
    • PostHog is now available on Segment!
    • The secrets of PostHog query performance
    • Why we're removing the sessions page
    • Array 1.0.10
    • Array 1.0.11
    • Array 1.0.8
    • Array 1.0.9
    • Array 1.1.0
    • Array 1.11.0
    • Array 1.10.0
    • Array 1.12.0
    • Array 1.13.0
    • Array 1.14.0
    • Array 1.15.0
    • Array 1.16.0
    • Array 1.17.0
    • Array 1.18.0
    • Array 1.2.0
    • Array 1.19.0
    • Array 1.20.0
    • Array 1.22.0
    • Array 1.21.0
    • Array 1.23.0
    • Array 1.24.0
    • Array 1.25.0
    • Array 1.27.0
    • Array 1.28.0
    • Array 1.29.0
    • Array 1.26.0
    • Array 1.3.0
    • Array 1.30.0
    • Array 1.31.0
    • Array 1.32.0
    • Array 1.33.0
    • Array 1.34.0
    • Array 1.35.0: Introducing SAML, world map view and new plugins
    • Array 1.37.0: Cohorts 2.0 and event & property detail pages
    • Array 1.36.0: Introducing AND/OR filtering, timezone support and universal search
    • Array 1.38.0: Exports, subscriptions and session analysis
    • Array 1.39.0: Betas, persons, events and libraries
    • Array 1.4.0
    • Array 1.40.0: Interface improvements and more!
    • Array 1.42.0: Get beta features via our roadmap!
    • Array 1.5.0
    • Array 1.41.0: Improving performance by up to 400%
    • Array 1.6.0
    • Array 1.7.0
    • Array 1.8.0
    • Array 1.9.0
    • Array 1.0.0
    • The state of plugins on PostHog
  • Release notes
    • Introducing the Avo Inspector app
    • How we’re improving performance by combining persons and events
    • Array 1.0.10
    • Array 1.0.11
    • Array 1.0.8
    • Array 1.0.9
    • Array 1.1.0
    • Array 1.11.0
    • Array 1.10.0
    • Array 1.12.0
    • Array 1.13.0
    • Array 1.14.0
    • Array 1.15.0
    • Array 1.16.0
    • Array 1.17.0
    • Array 1.18.0
    • Array 1.2.0
    • Array 1.19.0
    • Array 1.20.0
    • Array 1.22.0
    • Array 1.21.0
    • Array 1.23.0
    • Array 1.24.0
    • Array 1.25.0
    • Array 1.27.0
    • Array 1.28.0
    • Array 1.29.0
    • Array 1.26.0
    • Array 1.3.0
    • Array 1.30.0
    • Array 1.31.0
    • Array 1.32.0
    • Array 1.33.0
    • Array 1.34.0
    • Array 1.35.0: Introducing SAML, world map view and new plugins
    • Array 1.37.0: Cohorts 2.0 and event & property detail pages
    • Array 1.36.0: Introducing AND/OR filtering, timezone support and universal search
    • Array 1.38.0: Exports, subscriptions and session analysis
    • Array 1.39.0: Betas, persons, events and libraries
    • Array 1.4.0
    • Array 1.40.0: Interface improvements and more!
    • Array 1.42.0: Get beta features via our roadmap!
    • Array 1.5.0
    • Array 1.41.0: Improving performance by up to 400%
    • Array 1.6.0
    • Array 1.7.0
    • Array 1.8.0
    • Array 1.9.0
    • Array 1.0.0
  • Startups
    • A non-coder's thoughts on an 'Everybody Codes' culture
    • How we found our Ideal Customer Profile
    • Creating an employee-friendly startup share option scheme
    • How to get the first 10 paying customers for your devtool company (and other customer acquisition tips)
    • How to run a transparent startup
    • Building an open source data science publishing platform - An interview with Datapane CEO, Leo Anthias
    • How we made something people want
    • How we monetized our open source devtool
    • Should open source projects track you?
    • An engineer's guide to picking a cofounder
    • How to plan a killer company offsite in just 8 weeks
    • What we learned about hiring from our first five employees
    • How we rebranded PostHog in four weeks - a postmortem
    • Product engineer vs software engineer: what's the difference?
    • What's the true role of a product team at an engineering-led organization?
    • Why you may not need a sales team
    • Don’t bother securing your trademarks in the beginning
    • Building an all-remote company from scratch
    • All the cool things we built at our Rome hackathon
    • Content marketing strategy for devtool companies - How we do it at PostHog
    • Why open-source projects are essential for large businesses
    • How to run finance at your startup without hiring a finance person
    • How to choose job titles in your early stage startup
    • Startups, stop treating engineers like a different species
    • The ops toolkit for early-stage startups
    • How to turn your engineers into product people
    • Raising money is less stressful than bootstrapping
    • What is a product engineer (and why they're awesome)
    • Writing for developers
    • Reflecting on YC, 2 years on
  • Using PostHog
    • 5 essential tips for Customer Success teams on PostHog
    • 5 analytics ideas for marketing teams using PostHog
    • 5 essential PostHog apps for new users
    • 5 events all teams should track with PostHog
    • Permissions and projects in PostHog, explained
    • How (and why) our marketing team uses PostHog
    • How (and why) to track your website with PostHog
    • What is SSO and why you should enable it for PostHog
  • Home
  • CEO diaries
    • After the HN launch
    • Remote companies can be too asynchronous
    • The time before YC
    • Winning from the back - late mover advantage
    • Optimize for not breaking up with your co-founder
    • Cancer and revenue - the latest board meeting
    • "How come your website is so nice?"
    • Things I learned last year
    • Our new objective: Nail Self Serve
    • How we found our Ideal Customer Profile
    • Tell me about features, not benefits
    • The magic of a Hacker News Pre-Mortem
    • How to run a transparent startup
    • How we justified quitting our jobs and financing PostHog early on
    • How we made something people want
    • Moving to San Francisco
    • Pivot to PostHog
    • Counterintuitive lessons about our pricing
    • I used to think you don't need product people. I was wrong.
    • How we raised $3M for an open source project
    • A story about pivots
    • The YC Interview
    • Raising money is less stressful than bootstrapping
    • What motivates me as a CEO
    • The really important job interview questions engineers should ask (but don't)
    • Writing for developers
    • Reflecting on YC, 2 years on
  • Company & culture
    • How we do meetings at PostHog
  • Comparisons
    • PostHog vs Matomo
    • PostHog vs Amplitude
    • Why I ditched Google Analytics and Mixpanel for PostHog
  • Engineering
    • Enabling zero downtime data migrations for self-hosted users
    • Automating a software company with GitHub Actions
    • How to speed up ClickHouse queries using materialized columns
    • In-depth: ClickHouse vs PostgreSQL
    • Setting up super fast Cypress tests on GitHub Actions
    • How I learned to love feedback loops (and make better products)
    • Frontend filters & backend SQL - A chat with Eric Duong, Sam Winslow, James Greenhill, and Buddy Williams
    • PostHog Joins Hacktoberfest 2020
    • How PostHog built an app server (from MVP to billions of events)
    • How we’re making PostHog deployments easier
    • Solving the mystery of PostHog’s missing session recordings
    • I used to think you don't need product people. I was wrong.
    • The secrets of PostHog query performance
    • Benchmarking the impact of session recording on performance
    • The state of plugins on PostHog
    • We ship whenever
  • General
    • Setting up super fast Cypress tests on GitHub Actions
    • How we designed the PostHog mascot
    • Why you may not need a sales team
    • A story about pivots
  • Guides
    • Introduction to self-service analytics
    • Building an AARRR pirate funnel (how and why)
    • 5 essential tips for Customer Success teams on PostHog
    • 5 analytics ideas for marketing teams using PostHog
    • Automating a software company with GitHub Actions
    • The most useful B2B SaaS product metrics
    • The 7 best GDPR-compliant analytics tools
    • The best HIPAA-compliant A/B testing tools
    • The 5 best free and open-source A/B testing tools
    • The 4 best HIPAA-compliant analytics tools
    • The best open-source analytics and data tools
    • Open source (and self-hosted) alternatives to Hotjar & FullStory
    • The two ways to estimate your monthly event usage
    • How to speed up ClickHouse queries using materialized columns
    • In-depth: ClickHouse vs PostgreSQL
    • Google is about to make it a lot harder to track website and app users without third-party cookies
    • Setting up super fast Cypress tests on GitHub Actions
    • 5 essential PostHog apps for new users
    • 5 events all teams should track with PostHog
    • What launching Experimentation taught us about running effective A/B tests
    • How to get the first 10 paying customers for your devtool company (and other customer acquisition tips)
    • The best GA4 alternatives for apps and websites
    • How to harness the awesome power of growth loops
    • What is user segmentation?
    • How to measure product engagement
    • How to achieve B2B product market fit
    • How to work out what your users really need
    • How we do hiring & HR at PostHog
    • How we turned ClickHouse into our event mansion
    • An introduction to customer retention
    • Is Google Analytics HIPAA compliant?
    • Finding your North Star metric and why it matters
    • How we monetized our open source devtool
    • Building an open source data stack
    • How to plan a killer company offsite in just 8 weeks
    • Permissions and projects in PostHog, explained
    • How (and why) our marketing team uses PostHog
    • PostHog vs Matomo
    • PostHog vs Amplitude
    • Product engineer vs software engineer: what's the difference?
    • Don’t bother securing your trademarks in the beginning
    • How to seed, grow, and scale Developer Relations (and how we're doing it at PostHog)
    • The ops toolkit for early-stage startups
    • How (and why) to track your website with PostHog
    • 22 ways PostHog makes it easier to build great products
    • What is a product engineer (and why they're awesome)
    • A simple guide to personal data and PII
    • An introduction to product analytics and how it works
    • What is SSO and why you should enable it for PostHog
    • The 3 critical reasons companies choose self-hosted analytics
  • HogMail
    • HogMail #14
    • HogMail #15
    • HogMail #16
    • HogMail #17: The personal traits that can't be taught
    • HogMail #18: What can SaaS learn from the New York Times?
  • Inside PostHog
    • PostHog raises $15 million Series B for open source product analytics
    • A non-coders thoughts on ‘Everybody Codes’ - Part Two
    • A non-coder's thoughts on an 'Everybody Codes' culture
    • After the HN launch
    • Remote companies can be too asynchronous
    • The time before YC
    • How PostHog uses Wren to offset carbon emissions during offsites
    • Winning from the back - late mover advantage
    • Optimize for not breaking up with your co-founder
    • Cancer and revenue - the latest board meeting
    • "How come your website is so nice?"
    • Things I learned last year
    • Our new objective: Nail Self Serve
    • How we found our Ideal Customer Profile
    • How we do customer support at our open source devtool company
    • The importance of dogfooding - Why product managers should use their product as much as their users
    • How we designed the PostHog mascot
    • Using Gatsby and Puppeteer to create dynamic Open Graph images
    • Creating an employee-friendly startup share option scheme
    • Tell me about features, not benefits
    • How I learned to love feedback loops (and make better products)
    • The magic of a Hacker News Pre-Mortem
    • HostHogs - free drinks, free pizza and frequently asked questions
    • How to run a transparent startup
    • How we do hiring & HR at PostHog
    • How PostHog built an app server (from MVP to billions of events)
    • How we turned ClickHouse into our event mansion
    • How we justified quitting our jobs and financing PostHog early on
    • Introducing Phil Leggetter, our new head of Developer Relations
    • Using Google Analytics was deemed 'illegal' in some EU countries. We built a microsite in 48 hours to capitalize on the news.
    • Introducing Joe Martin - Our first Product Marketer
    • How we made something people want
    • How we do meetings at PostHog
    • Solving the mystery of PostHog’s missing session recordings
    • Moving to San Francisco
    • How PostHog's new VP focused the company on nailing funnels in his first week
    • An engineer's guide to picking a cofounder
    • Pivot to PostHog
    • How to plan a killer company offsite in just 8 weeks
    • PostHog raises $12 million in funding led by GV and Y Combinator
    • What we learned about hiring from our first five employees
    • How (and why) our marketing team uses PostHog
    • How we rebranded PostHog in four weeks - a postmortem
    • Counterintuitive lessons about our pricing
    • I used to think you don't need product people. I was wrong.
    • What's the true role of a product team at an engineering-led organization?
    • Building an all-remote company from scratch
    • How we raised $3M for an open source project
    • All the cool things we built at our Rome hackathon
    • Content marketing strategy for devtool companies - How we do it at PostHog
    • How to seed, grow, and scale Developer Relations (and how we're doing it at PostHog)
    • Benchmarking the impact of session recording on performance
    • Speeding up PostHog builds with Depot
    • How to run finance at your startup without hiring a finance person
    • How to choose job titles in your early stage startup
    • Startups, stop treating engineers like a different species
    • The ops toolkit for early-stage startups
    • A story about pivots
    • The YC Interview
    • Why we ditched ‘talk to sales’ for transparent pricing
    • Raising money is less stressful than bootstrapping
    • What motivates me as a CEO
    • The really important job interview questions engineers should ask (but don't)
    • Why I ditched Google Analytics and Mixpanel for PostHog
    • Why infrastructure is a competitive advantage for us
    • Why we raised a $15m Series B ahead of schedule
    • Writing for developers
    • Reflecting on YC, 2 years on
    • YC adds PostHog to top valued companies for July 2021
  • Launch week
    • Introducing Collaboration for PostHog
    • Introducing Data Management for PostHog
    • What launching Experimentation taught us about running effective A/B tests
    • How we’re making PostHog deployments easier
    • PostHog Launch Week I: A Universe of New Features
    • The secrets of PostHog query performance
  • Open source
    • The Early Days of GitLab - A Chat with Sid Sijbrandij
    • The 5 best free and open-source A/B testing tools
    • The 6 best free and open-source feature flag tools
    • The best open-source analytics and data tools
    • Open source (and self-hosted) alternatives to Hotjar & FullStory
    • How we do customer support at our open source devtool company
    • How I learned to love feedback loops (and make better products)
    • PostHog Joins Hacktoberfest 2020
    • Give Back Friday with PostHog
    • Building an open source data science publishing platform - An interview with Datapane CEO, Leo Anthias
    • How we monetized our open source devtool
    • Open source is eating SaaS
    • Building an open source data stack
    • Should open source projects track you?
    • PostHog vs Amplitude
    • How we raised $3M for an open source project
    • Why open-source projects are essential for large businesses
    • Send love to open-source projects on Valentine's Day
    • Speeding up PostHog builds with Depot
    • The 3 critical reasons companies choose self-hosted analytics
  • PostHog Academy
    • What is user segmentation?
    • How to measure product engagement
    • How to achieve B2B product market fit
    • How to work out what your users really need
    • An introduction to customer retention
    • An introduction to product analytics and how it works
  • Privacy
    • The 7 best GDPR-compliant analytics tools
    • The best HIPAA-compliant A/B testing tools
    • The 4 best HIPAA-compliant analytics tools
    • Google is about to make it a lot harder to track website and app users without third-party cookies
    • A new 'Privacy Shield' won't solve big tech's GDPR problem
    • Is Google Analytics HIPAA compliant?
    • A simple guide to personal data and PII
  • Product analytics
    • Introduction to self-service analytics
    • Building an AARRR pirate funnel (how and why)
    • The two ways to estimate your monthly event usage
    • How to harness the awesome power of growth loops
    • What is user segmentation?
    • How to measure product engagement
    • How to achieve B2B product market fit
    • How to work out what your users really need
    • An introduction to customer retention
    • Is autocapture ‘still’ bad?
    • Finding your North Star metric and why it matters
    • How PostHog's new VP focused the company on nailing funnels in his first week
    • What's the true role of a product team at an engineering-led organization?
    • How to turn your engineers into product people
    • 22 ways PostHog makes it easier to build great products
    • An introduction to product analytics and how it works
  • Product updates
    • Why we're giving away 100 times more cloud usage, free
    • Enabling zero downtime data migrations for self-hosted users
    • Introducing the Avo Inspector app
    • We just made PostHog Open Source 1000x more scalable via ClickHouse
    • Introducing Collaboration for PostHog
    • Introducing Data Management for PostHog
    • What launching Experimentation taught us about running effective A/B tests
    • Group Analytics is now available in PostHog
    • You can now reverse ETL into PostHog with Hightouch
    • How we’re making PostHog deployments easier
    • PostHog Launch Week I: A Universe of New Features
    • How we’re improving performance by combining persons and events
    • PostHog teams up with Altinity
    • Introducing PostHog Cloud EU
    • Restack joins the PostHog Marketplace
    • PostHog is now available on Segment!
    • The secrets of PostHog query performance
    • Why we're removing the sessions page
    • Array 1.0.10
    • Array 1.0.11
    • Array 1.0.8
    • Array 1.0.9
    • Array 1.1.0
    • Array 1.11.0
    • Array 1.10.0
    • Array 1.12.0
    • Array 1.13.0
    • Array 1.14.0
    • Array 1.15.0
    • Array 1.16.0
    • Array 1.17.0
    • Array 1.18.0
    • Array 1.2.0
    • Array 1.19.0
    • Array 1.20.0
    • Array 1.22.0
    • Array 1.21.0
    • Array 1.23.0
    • Array 1.24.0
    • Array 1.25.0
    • Array 1.27.0
    • Array 1.28.0
    • Array 1.29.0
    • Array 1.26.0
    • Array 1.3.0
    • Array 1.30.0
    • Array 1.31.0
    • Array 1.32.0
    • Array 1.33.0
    • Array 1.34.0
    • Array 1.35.0: Introducing SAML, world map view and new plugins
    • Array 1.37.0: Cohorts 2.0 and event & property detail pages
    • Array 1.36.0: Introducing AND/OR filtering, timezone support and universal search
    • Array 1.38.0: Exports, subscriptions and session analysis
    • Array 1.39.0: Betas, persons, events and libraries
    • Array 1.4.0
    • Array 1.40.0: Interface improvements and more!
    • Array 1.42.0: Get beta features via our roadmap!
    • Array 1.5.0
    • Array 1.41.0: Improving performance by up to 400%
    • Array 1.6.0
    • Array 1.7.0
    • Array 1.8.0
    • Array 1.9.0
    • Array 1.0.0
    • The state of plugins on PostHog
  • Release notes
    • Introducing the Avo Inspector app
    • How we’re improving performance by combining persons and events
    • Array 1.0.10
    • Array 1.0.11
    • Array 1.0.8
    • Array 1.0.9
    • Array 1.1.0
    • Array 1.11.0
    • Array 1.10.0
    • Array 1.12.0
    • Array 1.13.0
    • Array 1.14.0
    • Array 1.15.0
    • Array 1.16.0
    • Array 1.17.0
    • Array 1.18.0
    • Array 1.2.0
    • Array 1.19.0
    • Array 1.20.0
    • Array 1.22.0
    • Array 1.21.0
    • Array 1.23.0
    • Array 1.24.0
    • Array 1.25.0
    • Array 1.27.0
    • Array 1.28.0
    • Array 1.29.0
    • Array 1.26.0
    • Array 1.3.0
    • Array 1.30.0
    • Array 1.31.0
    • Array 1.32.0
    • Array 1.33.0
    • Array 1.34.0
    • Array 1.35.0: Introducing SAML, world map view and new plugins
    • Array 1.37.0: Cohorts 2.0 and event & property detail pages
    • Array 1.36.0: Introducing AND/OR filtering, timezone support and universal search
    • Array 1.38.0: Exports, subscriptions and session analysis
    • Array 1.39.0: Betas, persons, events and libraries
    • Array 1.4.0
    • Array 1.40.0: Interface improvements and more!
    • Array 1.42.0: Get beta features via our roadmap!
    • Array 1.5.0
    • Array 1.41.0: Improving performance by up to 400%
    • Array 1.6.0
    • Array 1.7.0
    • Array 1.8.0
    • Array 1.9.0
    • Array 1.0.0
  • Startups
    • A non-coder's thoughts on an 'Everybody Codes' culture
    • How we found our Ideal Customer Profile
    • Creating an employee-friendly startup share option scheme
    • How to get the first 10 paying customers for your devtool company (and other customer acquisition tips)
    • How to run a transparent startup
    • Building an open source data science publishing platform - An interview with Datapane CEO, Leo Anthias
    • How we made something people want
    • How we monetized our open source devtool
    • Should open source projects track you?
    • An engineer's guide to picking a cofounder
    • How to plan a killer company offsite in just 8 weeks
    • What we learned about hiring from our first five employees
    • How we rebranded PostHog in four weeks - a postmortem
    • Product engineer vs software engineer: what's the difference?
    • What's the true role of a product team at an engineering-led organization?
    • Why you may not need a sales team
    • Don’t bother securing your trademarks in the beginning
    • Building an all-remote company from scratch
    • All the cool things we built at our Rome hackathon
    • Content marketing strategy for devtool companies - How we do it at PostHog
    • Why open-source projects are essential for large businesses
    • How to run finance at your startup without hiring a finance person
    • How to choose job titles in your early stage startup
    • Startups, stop treating engineers like a different species
    • The ops toolkit for early-stage startups
    • How to turn your engineers into product people
    • Raising money is less stressful than bootstrapping
    • What is a product engineer (and why they're awesome)
    • Writing for developers
    • Reflecting on YC, 2 years on
  • Using PostHog
    • 5 essential tips for Customer Success teams on PostHog
    • 5 analytics ideas for marketing teams using PostHog
    • 5 essential PostHog apps for new users
    • 5 events all teams should track with PostHog
    • Permissions and projects in PostHog, explained
    • How (and why) our marketing team uses PostHog
    • How (and why) to track your website with PostHog
    • What is SSO and why you should enable it for PostHog
  • Blog
  • Release notes
  • Product updates

Array 1.21.0

Release 1.21 is a big one, on top of exciting new features and improvements, we put extra time into the overall stability of PostHog squashing dozens of issues. Some highlights of this release:

  • New: Our new navigation is out of beta and available to all
  • New: assign Feature Flags to multiple groups of users
  • New: Apps UI and new Taxonomy app
  • Improvement: to Insight query caching
  • Improvement: to Session Recording filters

We received a lot of great feedback and issue reports and over this release cycle we fixed hundreds of issues, polishing our UI, squashing bugs, and significantly improving our performance.

Make sure to upgrade to get the new features, improvements and fixes.


Install PostHog

Release Notes

If you're self-hosting and want to upgrade for a better experience and new features, remember to update your PostHog instance.

New Navigation For All

New Nav

While this might not be news to all of you, we have now released our new navigation to everyone.

We had this behind a feature flag, but now all our users have access to our fresh "spaceship-like" navigation. What do you think? 🚀

Refreshing Insights

Refreshing Insights

To provide a smooth user experience, we cache query results so that you don't have to wait for a query to run every time you view a chart.

This has the side effect that sometimes you'll be looking at slightly outdated results. We made improvements to clearly indicate when you're looking at a cached result, when it was computed, and allow you to refresh.

Session Recording Filters

Session filters

Our session recording filters just got so much more powerful. Filter by session duration, user properties, unseen recordings, actions performed in a session, and so much more.

You can now get a lot more out of your session recording sessions by tailoring the recordings to specific areas of your product you're looking into.

For a start, how about integrating PostHog with Sentry and watching all recordings with an $exception event in them?

Multiple Groups in Feature Flags

Feature Flag Multiple Groups

Feature flags can now be rolled out to multiple different groups that use distinct settings, unlocking a whole new world of opportunities for your A/B testing and feature rollout processes.

For example, you can now roll out feature flags like this:

  • 100% of users in the 'Beta Testers' cohort
  • 40% of all your users
  • All users in a specific team that requested the feature from you

The filters and rollout percentages can be adjusted per group, giving you greater control degree of how you build and test your products.

A New Plugins UI with Brand New Features

Apps UI

A lot has happened to our apps feature since the last release, including:

  • An improved UI
  • The ability to reorder apps
  • The ability to upgrade apps (and see exactly what changed between versions)
  • Autofill on commonly used app configuration fields
  • A new app configuration field type, letting app builders specify pre-determined choices for the user to select from
  • A ton of performance improvements

Taxonomy Standardizer

Taxonomy Standardizer

Standardize your event names into a single naming pattern by converting the names of your events that don't match your desired pattern into the chosen format, such as camelCase or snake_case.

Bitbucket Release Tracker (Beta)

Bitbucket App

Get your Bitbucket release tags into PostHog as annotations on your graphs, so you can track the impact of releases on your metrics.

User Interviews

We’re working hard to improve PostHog and would love to talk to you about your experience with the product.

If you're interested in helping us out, you can schedule a quick 30-min call with us on Calendly.

Oh, and we're giving away some awesome PostHog merch as a thank you!

Favorite Issue

Darkmode Design + UX

We're redesigning Dark Mode for our Docs - can ya dig it?

PostHog News

Sean has joined us to lead our marketing efforts and we're super excited.

He is a developer with an impressive background in open source software and game development and believes (correctly) that pineapple and pizza must not commingle.

Community Shoutouts

Big thanks to the following members of our community who have contributed to PostHog over this release cycle:

  • FUSAKLA
  • cpankajr
  • zegl
  • reicolina
  • evoxmusic
  • anandvc
  • leggetter
  • tmilicic

Community MVP

A special shoutout goes to cpankajr, our Community MVP for this release cycle, for helping us say goodbye to the pandas and numpy bloat in our images.

Open Roles

Are you a Fullstack Engineer, Senior Engineer, Site Reliability Engineer, Customer Success Lead, or Content Writer?

Or perhaps you're not either but think you'd still be a good fit for PostHog?

We want you!

Bug Fixes and Performance Improvements

In addition to the highlights listed above, we also merged a bunch of PRs improving PostHog's performance and fixing bugs:

  • Prefilter post_event_to_webhook_ee more #3368 (Twixes)
  • Fix hidden plugin config field #3364 (yakkomajuri)
  • Bump rrweb 0.9.14 #3361 (timgl)
  • retention dashboard item refresh bug #3359 (EDsCODE)
  • 3293 retention hourly bug #3358 (EDsCODE)
  • Fix filtering on elements clickhouse #3354 (timgl)
  • Fix /demo feature flags loading issue #3350 (yakkomajuri)
  • Update launch toolbar CTA for new nav #3347 (yakkomajuri)
  • Add Invite Team Member to top bar user dropdown #3343 (Twixes)
  • Fix/replace setTimeout in logics #3337 (macobo)
  • Fix formula query parsing #3336 (timgl)
  • Fix funnel people not showing #3335 (timgl)
  • add try catch to persons in retention #3332 (EDsCODE)
  • Fix first time retention people query #3331 (EDsCODE)
  • Bump plugin server to 0.8.3 #3329 (mariusandra)
  • Plugin server 0.8.2 #3327 (mariusandra)
  • fix more formula errors #3326 (timgl)
  • Bump plugin server to 0.8.1 #3325 (mariusandra)
  • Fix infinites in formula #3323 (timgl)
  • Fix breaking down by property with no value(s) #3322 (macobo)
  • Add try except back to trend class #3320 (EDsCODE)
  • Fix nans in counts formula #3319 (timgl)
  • Add smarter settings getenv helper function for safety #3317 (Twixes)
  • Enable plugin server parallel ingestion #3316 (mariusandra)
  • Return 404 instead of 500 when person to be deleted is not found #3314 (macobo)
  • Move breakpoints around #3313 (macobo)
  • Set Cloud PLUGIN_SERVER_INGESTION to false #3312 (Twixes)
  • Update posthog-js to 1.8.7 #3310 (macobo)
  • Fix invalid funnel insights display filter #3309 (macobo)
  • Plugin server to 0.8.0 #3307 (mariusandra)
  • Bump webhook_url limit to 500 chars #3306 (macobo)
  • Ingest all teams via the plugin server #3305 (mariusandra)
  • Allow viewing sessions/recordings on persons page #3302 (macobo)
  • Remove statsd logspam #3299 (macobo)
  • Don't set is calculating for static cohorts #3297 (timgl)
  • Rework sessions list query to account for pagination #3296 (macobo)
  • Fix instance status page #3292 (Twixes)
  • Fix retention linear chart in dashboards #3290 (Twixes)
  • Fix ints saved as strings clickhouse #3289 (timgl)
  • Misc plugin improvements #3288 (mariusandra)
  • Fix filtering by user property in CH sessions list #3285 (macobo)
  • Plugin server info on system status page #3284 (mariusandra)
  • Bump cryptography from 3.2 to 3.3.2 #3281 (dependabot[bot])
  • Remove CH Pool as dependency #3279 (fuziontech)
  • Trend component test #3278 (EDsCODE)
  • Fix non-anonymous ids #3276 (timgl)
  • Formulas #3275 (timgl)
  • Use elements_chain in EE webhook #3273 (Twixes)
  • Fix non-anonymous distinct id first #3272 (timgl)
  • REST/webhook optimizations #3267 (Twixes)
  • Persons component test #3266 (EDsCODE)
  • Update clickhouse-driver #3265 (macobo)
  • Fix mutating process_event_ee bug #3263 (mariusandra)
  • Serialize/deserialize elements_chain on webhooks_ee #3262 (macobo)
  • Don't show "save" if user has not yet entered all cohort group data. #3261 (macobo)
  • Cloud billing trial period & free plan #3259 (paolodamico)
  • Fix update indicator on top navigation #3258 (paolodamico)
  • Show toast if signup fails #3257 (macobo)
  • Updated Go installation instructions #3256 (zegl)
  • Improve entity rows layout #3255 (timgl)
  • Capture EE webhook task sending error #3254 (Twixes)
  • Always show non-anonymous distinct id first #3251 (timgl)
  • Plugin server 0.7.5 #3250 (mariusandra)
  • Return no data for invalid regexes #3248 (macobo)
  • Make page not jumpy on initial load #3246 (macobo)
  • Add capture exception cohorts #3245 (timgl)
  • Separate Jest from frontend code quality job #3241 (Twixes)
  • Enhance Project settings #3240 (Twixes)
  • Ellipsis for long action names #3239 (macobo)
  • Instrumentation Feb-8 #3238 (paolodamico)
  • Fix Cannot read property 'sessionsPlayLogic' of undefined #3235 (macobo)
  • Improve project deletion #3234 (macobo)
  • React component tests with cypress #3233 (macobo)
  • Improve invites #3232 (Twixes)
  • Clean up query timeout notice #3231 (Twixes)
  • Add selection option to plugin config #3229 (yakkomajuri)
  • Upgrade plugin server to 0.7.4 #3226 (mariusandra)
  • Upgrade plugin server to 0.7.3 #3225 (mariusandra)
  • add type and null check before reporting #3224 (EDsCODE)
  • Make action null safe #3223 (EDsCODE)
  • Don't blow up if funnel has no steps #3222 (macobo)
  • Try catch property #3221 (EDsCODE)
  • Remove any loaders errors #3220 (timgl)
  • Update posthog-js 1.8.6 #3219 (timgl)
  • Add breakpoint() calls to cohortLogic #3217 (macobo)
  • Add missing awaits to breakpoint(X) calls #3216 (macobo)
  • Avoid erroring when loading dashboards with no active project #3214 (macobo)
  • Return 1 week of data when choosing 'all time' with no event data #3212 (macobo)
  • Fix SelectBox keyboard navigation #3211 (macobo)
  • Fix more z-index wonkiness #3210 (paolodamico)
  • Emit timing gauge to statsd for sync_execute on clickhouse #3209 (fuziontech)
  • str(team.organization_id) in PLUGINS_CLOUD_WHITELISTED_ORG_IDS check #3208 (Twixes)
  • Handle navigation race in insights logic #3207 (macobo)
  • Flip PLUGIN_SERVER_INGESTION on #3206 (mariusandra)
  • Bump plugin server to 0.7.2 #3205 (Twixes)
  • Update plugin server to 0.7.1 #3204 (mariusandra)
  • Alltime compare sentry error #3203 (EDsCODE)
  • Fix numerical person properties turning to strings on save #3202 (yakkomajuri)
  • Add clickhouse connection envs for plugin server #3201 (mariusandra)
  • Grab all events and properties even if job hasn't run yet #3200 (timgl)
  • Update @sentry/browser #3199 (macobo)
  • Fix mobile menu z-index #3198 (paolodamico)
  • Return a 400 when /decide called with invalid token #3197 (macobo)
  • Fix stickiness comparison #3195 (macobo)
  • Fix LinkButton component #3194 (macobo)
  • Billing page improvements #3192 (paolodamico)
  • Avoid TypeError when assets have been regenerated loading a scene #3188 (macobo)
  • Fix bug introduced by typing trendsLogic #3186 (macobo)
  • Remove broken copy-pasted code #3184 (macobo)
  • Fix recursion problems caused by sessionsTableLogic #3183 (macobo)
  • Remove proj settings tests #3179 (EDsCODE)
  • Handle empty content-type from IE11 in capture endpoint #3178 (macobo)
  • Fix axis labels color on bar charts #3176 (yakkomajuri)
  • Release onboarding #2822 & final tweaks #3174 (paolodamico)
  • Extra test features for posthog-js E2E test #3173 (macobo)
  • Make migration for person_email index only if not exists #3172 (fuziontech)
  • Wrap saved funnel name smarterly #3171 (Twixes)
  • Type path logic #3170 (EDsCODE)
  • Handle corrupted cache #3169 (yakkomajuri)
  • Fix broken url in paths #3168 (EDsCODE)
  • Simplify cohort queries #3165 (timgl)
  • Fix key error in capture #3164 (Twixes)
  • Do not open people modal on retention panel in dashboard #3162 (yakkomajuri)
  • Clean up EE settings.py and fix Google auth whitelisted domains #3159 (Twixes)
  • Update contributor avatars #3158 (yakkomajuri)
  • Make pies listen to color changes and update #3157 (yakkomajuri)
  • Autofocus on email instead of first name on signup #3155 (timgl)
  • Improve Saved Funnels UX #3153 (Twixes)
  • Type trend logic #3152 (EDsCODE)
  • Update plugin server to 0.6.11 #3151 (Twixes)
  • Fix FOSS copyright formatting #3146 (Twixes)
  • Update copyright years and use MIT license in posthog-foss #3145 (Twixes)
  • Bulk invite team members (setup section II) #3143 (paolodamico)
  • Chart above fold #3142 (Twixes)
  • Improve handling of .git* files/dirs #3141 (Twixes)
  • Fix Person page loading by email under persons-2353 #3139 (yakkomajuri)
  • Remove clickhouse pooler from sync execute path #3138 (fuziontech)
  • Setup Section II & General State #3129 (paolodamico)
  • add null check to eventusage logic #3125 (EDsCODE)
  • Fix condition for disabled compare filter when all time is selected #3123 (EDsCODE)
  • Revamp and optimize hooks on EE #3119 (Twixes)
  • Add person email index #3116 (timgl)
  • 2794 retention people #3108 (EDsCODE)
  • Enable PLUGIN_SERVER_INGESTION #3107 (Twixes)
  • 1269 funnel trends 2 #3079 (timgl)
  • Remove Stats from Toolbar #3040 (yakkomajuri)
  • Added new functionality to readme #2963 (jamesefhawkins)
  • Migrate team invite signup to React - Part I (Backend) #2734 (paolodamico)
  • Make social login work with new Onboarding logic #3131 (macobo)
  • Onboarding: Populate a sample session recording #3128 (macobo)
  • Onboarding: Save personalization data #3126 (macobo)
  • Make PluginConfig.order mandatory #3122 (Twixes)
  • Apply type and optional checks to billing var #3121 (EDsCODE)
  • Update demo data warning styles #3120 (macobo)
  • Onboarding personalisation adjustments (retention#9) #3117 (paolodamico)
  • Remove emails from csv #3115 (timgl)
  • Add team filter to cohort query to speed up #3112 (timgl)
  • Improve demo data #3111 (macobo)
  • Fix unbound plugin update response #3106 (Twixes)
  • Add action filter button on remove-shownas flag #3105 (EDsCODE)
  • Onboarding setup page (continues #2822) #3104 (paolodamico)
  • Onboarding: Create demo data, show demo alert at top, route directly to dashboard #3103 (macobo)
  • Fix API incompatibility with old feature flags code #3102 (macobo)
  • Fix multi-group feature flags #3101 (macobo)
  • Plugin order #3100 (mariusandra)
  • Add whitelists for domains on Google OAuth #3098 (fuziontech)
  • Move adding feature flags to event to capture endpoint 2: This Time It's Personal #3096 (Twixes)
  • Only show tooltips when you can actually click #3093 (EDsCODE)
  • Retention logic types #3091 (EDsCODE)
  • Move adding feature flags to event to capture endpoint #3090 (Twixes)
  • Fix paths background color in dashboard #3089 (yakkomajuri)
  • Milestone P1 - #2822 implementation #3088 (paolodamico)
  • Reduce axes logspam #3086 (macobo)
  • Make feature flag query faster #3084 (macobo)
  • Plugins required in preflight check #3083 (mariusandra)
  • 3072 retention person modal fix #3080 (EDsCODE)
  • Fix retention "load more" people #3075 (macobo)
  • Allow configuring session recording retention period #3074 (macobo)
  • Private token support for GitHub and npm URLs #3070 (mariusandra)
  • Hotfix for missing session recording events #3069 (macobo)
  • Fix exception when using a bad selector to select actions #3067 (mariusandra)
  • Closes #3065 resolve sessions by distinct ID error #3066 (stevenphaedonos)
  • Remove bulk events gen #3061 (yakkomajuri)
  • Various fixes 210122 #3058 (paolodamico)
  • Plugin upgrades #3057 (mariusandra)
  • Add missing logic for action days in cohort calculating #3056 (EDsCODE)
  • Use KAFKA_HOSTS instead of KAFKA_URL in ECS dockerized plugin server #3054 (Twixes)
  • Fix plugin server task definition rendering #3053 (Twixes)
  • Run independently dockerized plugin server in Cloud #3052 (Twixes)
  • Run typescript with strict in CI, allow no new errors #3050 (macobo)
  • Some typescript fixes #3049 (mariusandra)
  • Kea TypeGen types in the same folder as logic #3048 (mariusandra)
  • Fix session recording breakage #3045 (macobo)
  • Plugin Server 0.6.8 #3043 (mariusandra)
  • Add try statement for deleting persons in case the table is distributed #3042 (EDsCODE)
  • Add refresh param to retention and paths #3039 (EDsCODE)
  • Hide plugins from nav in Cloud #3038 (yakkomajuri)
  • Patch DNE in sessionsplaylogic #3037 (EDsCODE)
  • Plugin server 0.6.6 #3035 (mariusandra)
  • Don't install unused pandas and numpy #3034 (Twixes)
  • Plugin unique url with different private tokens & improve privacy #3033 (mariusandra)
  • Exclude health from ip block #3027 (timgl)
  • Don't include materialized columns in kafka table #3026 (fuziontech)
  • Add user param for clickhouse if provided #3025 (fuziontech)
  • Setup logging to system.text_log in dev environment #3024 (fuziontech)
  • Only aggregate breakdown if it's a table or pie chart #3023 (EDsCODE)
  • feat: set event root logger severity using the DJANGO_LOG_LEVEL env variable #3016 (FUSAKLA)
  • feat: allow setting Sentry environment by using the SENTRY_ENVIRONMENT env variable #3015 (FUSAKLA)
  • Delete omni_person.proto #3014 (Twixes)
  • Fix multiple actions in funnel #3011 (timgl)
  • Add denormalized prop config #3009 (timgl)
  • Plugins page UX improvement #3006 (mariusandra)
  • Upgrade to plugin server 0.6.5 #3003 (mariusandra)
  • Change suggestion and save cypress test #3002 (EDsCODE)
  • Bump version to 1.20.0, update changelog #3001 (yakkomajuri)
  • Allow filtering by unseen recordings #3000 (macobo)
  • Use utc moment for retention dates and fix modal title #2998 (EDsCODE)
  • 2248 remove pandas numpy #2997 (cpankajr)
  • Show progress in retention table #2995 (EDsCODE)
  • Fix interval persons bug for trends #2992 (EDsCODE)
  • Support for installing plugins from private GitLab repositories #2991 (mariusandra)
  • Standardize created at and by table columns #2961 (timgl)
  • Highlight filtered events in events table and in session recording #2954 (macobo)
  • Refactor web ingestion onboarding & add bookmarklet #2953 (paolodamico)
  • Round sessions value #2925 (EDsCODE)
  • Denormalize clickhouse props #2903 (timgl)
  • Add handing off event ingestion to plugin server #2898 (Twixes)
  • Add timeout and error messages #2876 (timgl)
  • Add autofill for posthog props in plugin config #2838 (yakkomajuri)
  • Enable SSL PostgreSQL configuration through env variables #2967 (tmilicic)

Ready to find out more?

Try PostHog todaySchedule a demo

Share

Topic(s)

  • Release notes
  • Product updates

Feb 17, 2021

The best of PostHog.
Delivered twice a month.

Jump to:

  • Release Notes
  • New Navigation For All
  • Refreshing Insights
  • Session Recording Filters
  • Multiple Groups in Feature Flags
  • A New Plugins UI with Brand New Features
  • Taxonomy Standardizer
  • Bitbucket Release Tracker (Beta)
  • User Interviews
  • Favorite Issue
  • Darkmode Design + UX
  • PostHog News
  • Community Shoutouts
  • Community MVP
  • Open Roles
  • Bug Fixes and Performance Improvements
  • Edit this page
  • Raise an issue
  • Toggle content width
  • Toggle dark mode
  • Product

  • Overview
  • Pricing
  • Product analytics
  • Session recording
  • A/B testing
  • Feature flags
  • Apps
  • Customer stories
  • PostHog vs...
  • Docs

  • Quickstart guide
  • Self-hosting
  • Installing PostHog
  • Building an app
  • API
  • Webhooks
  • How PostHog works
  • Data privacy
  • Using PostHog

  • Product manual
  • Apps manuals
  • Tutorials
  • Community

  • Questions?
  • Product roadmap
  • Contributors
  • Partners
  • Newsletter
  • Merch
  • PostHog FM
  • PostHog on GitHub
  • Handbook

  • Getting started
  • Company
  • Strategy
  • How we work
  • Small teams
  • People & Ops
  • Engineering
  • Product
  • Design
  • Marketing
  • Customer success
  • Company

  • About
  • Team
  • Investors
  • Press
  • Blog
  • FAQ
  • Support
  • Careers
© 2022 PostHog, Inc.
  • Code of conduct
  • Privacy policy
  • Terms