As PostHog starts to gain traction as an alternative solution to Google Analytics, it’s a great moment to start telling more about its capabilities, especially its scalability. One of their features that is lurking in the shadows is PostHog Apps. These apps allow you to extend PostHog’s functionality. PostHog Apps can help you set up connections with several mainstream platforms and perform actions with the data, both when ingested and distributed, and more.

Being an official PostHog partner, we dove into these apps to find out which ones you should consider using on your first project.

What is PostHog?

Before we start, let’s answer the basic question, what is PostHog? PostHog is an open-source product analytics platform that helps companies track user behavior and make data-driven decisions. It was founded in 2020 by James Hawkins and Tim Glaser and is built on top of popular open-source technologies like Django, React, and PostgreSQL.

PostHog offers a variety of features, including event tracking, user cohorts, A/B testing, funnels, and more. Users can also integrate PostHog with tools like Slack, Zapier, and Segment to streamline their workflows and data analysis. Users can leverage existing Google Tag Manager architectures by implementing the PostHog GTM Template.

One of the unique aspects of PostHog is its open-source nature, which allows users to self-host the platform and customize it to their specific needs. This can especially appeal to companies that want more control over their data and analytics tools.

Overall, PostHog is a robust analytics platform that offers a wide range of features and flexibility for companies looking to track and analyze user behavior.

What are PostHog Apps?

PostHog apps are a great way to extend PostHog’s functionality. PostHog Apps can be applied on incoming and outgoing data. Apps can be used to send event data to a data warehouse, pull data from a third-party API to enrich the event, add data from other sources to PostHog, label events, and enforce event schemas.
Personally I find this architecture easy to work with. With over 50+ PostHog Apps already available for use, PostHogt can easily be tailored to fit your organizations needs. PostHog Apps, in some respect, are comparable to Segment Functions, Google Tag Manager Templates, and Freshpaint Transformations.
In addition, PostHog Apps can be chained together to perform multiple actions on a single tracked event.
posthog app chain

Essential PostHog Apps you should consider using

Heartbeat

The Heartbeat will automatically send a unique event into the event ingestion queue at a rate of once per minute. This can be useful for several reasons, the main one being that you can receive an alert when tracking is down. This app works well with the Ingestion Alert app if your website does not receive a lot of visitors and you are worried about uptime.

posthog app heartbeat

Heartbeat App Information

  • Link: https://app.posthog.com/project/apps?name=Heartbeat
  • Author: https://github.com/marcushyett-ph

Ingestion Alert

You can use the PostHog Ingestion Alert app to receive alerts whenever your project stops reveicing any data within a specific time range, or when drop in traffic has been resolved. You can easily setup alert webhook endpoints using solutions like Zapier. If your websites receives round-the-clock visitors this app will be sufficient, however, if you have a low traffic website use this app together with the Heartbeat app to simulate traffic.

posthog app ingestion alert

Ingestion Alert App Information

  • Link: https://posthog.com/docs/apps/ingestion-alert
  • Authors: https://github.com/kpthatsme & https://github.com/marcushyett-ph

Property Filter

The Property Filter app is as straight-forward as they come. Simply enter a comma separated list of properties you want filtered out from your event before the data is ingested by PostHog.

posthog app property filter

Property Filter App Information

  • Link: https://app.posthog.com/project/apps?name=Property%20Filter
  • Authors: https://github.com/Christian-aman-insurely & https://github.com/lsmith77

Unduplicates

Remember the times back when we had to build workarounds in Google Tag Manager to deduplicate transactions? My theory is that Paolo, a former PostHog developer experienced this, too, and purposely try to build this app to save us the trauma 😉

The app has two modes according to the documentation:

  • Event and Timestamp. An event will be treated as duplicate if the timestamp, event name and user’s distinct ID matches exactly, regardless of what internal properties are included.

  • All Properties. An event will be treated as duplicate only if all properties match exactly, as well as the timestamp, event name and user’s distinct ID.

It would be nice if the app was updated to include a deduplication on transaction ID value… we were so close. 🫣

posthog apps unduplicates

Unduplicates App Information

  • Link: https://app.posthog.com/project/apps?name=Unduplicates
  • Authors: https://github.com/paolodamico

User Agent Populator

This App will help you break down useragent values into separate variables from the event payload. When collecting data from the frontend, or any source that supports useragent data, this will be done automatically. There are a few cases in which you will need to enable this, such as server-side data collections. In a recent customer case we used this App to parse data forwarded from a frontend to a server-side call, including the useragent string derived from navigator.useragent global variable. PostHog initially did not parse the data properly into separate variables, after enabling this App, it did.

posthog apps user agent populator

User Agent Populator App Information

  • Link: https://app.posthog.com/project/apps?name=User%20Agent%20Populator
  • Authors: https://www.npmjs.com/~weyert

URL query parameter converter

Again, another app that does exactly what it does, convert query parameter key/value pairs into event parameters. This app is extremely flexible in that you can define which query parameters you want turned in event parameters, and if you want to add a prefix or suffix to identify the parameters in your data warehouse.

posthog apps URL query parameter converter

URL query parameter converter App Information

  • Link: https://app.posthog.com/project/apps?name=url-query-parameter-converter
  • Authors: https://github.com/everald

Event Sequence Timer

The Event Sequence Timer app is great. Its simplicity is refreshing, and its purpose is practical. Let’s say you want to track the time it takes a user to complete a form. The form has both a start and submit event. Using the Event Sequence Timer app you simply denote the events you want to track (form_start, form_submit) and an extra parameter will be added to the latter event indicating how long the user took to complete the sequence.

posthog apps event sequence timer

Event Sequence Timer App Information

  • Link: https://app.posthog.com/project/apps?name=Event%20Sequence%20Timer%20Plugin
  • Authors: https://github.com/yakkomajuri

Filter Out

Similar to the Property Filter app, Filter Out can help you prevent the ingestion of events of which the event payload may be incomplete, or originated from development activities. By uploading a JSON file with conditional statements events can be dropped.

posthog apps filter out example json

Common cases for this could be the filtering out of events:

  • generated from a specific useragent
  • where the properties indicate that the event was generated on a development server
  • where the properties indicate that the event was generated by an internal user
  • form events where text fields include URLs possibly indicating spam traffic

In any case, this App serves several purposes, unique to every PostHog customer. Use it wisely.

Filter Out App Information

  • Link: https://app.posthog.com/project/apps?name=Filter%Out%20Plugin
  • Authors: https://github.com/plibither8

First Time Event Tracker

The First Time Event app is one of those apps that you did not know you needed, until you had it. Imagine being able to track the first time a specific event was triggered for a user, or in general. This app will do just that for you. This data will then be available in your data warehouse to take action on.

  • When did a user make their first purchase?
  • When did a user become a paying subscriber for the first time?
  • When did a place their first bid?

The options are endless, but the power lies in how you leverage this data, and that would require a whole separate blog post.

posthog apps first time event tracker

First Time Event Tracker App Information

  • Link: https://app.posthog.com/project/apps?name=First%20Time%20Event%20Tracker
  • Authors: https://github.com/yakkomajuri

Property Flattener

The Property Flattener app may not seem essential to developers, but for analysts it could be that warm shower after a day out in the cold. The app flattens nested properties in an event payload, into simple root level properties. Although this is great for single nested objects, it could should not be used in multiple nested objects such as an items array. Nevertheless, this app could simplify certain analysis activities.

posthog apps property flatner

Property Flattener App Information

  • Link: https://app.posthog.com/project/apps?name=Property%20Flattener%20Plugin
  • Authors: https://github.com/yakkomajuri, https://github.com/timgl, https://github.com/mariusandra, and https://github.com/chasovskiy

Taxonomy Standardizer

The Taxonomy Standardizer app is another great addition to the PostHog Apps collection. It is well know that frontend, backend, and app developers often maintain different standards when it comes to naming parameters. If the terms camel, snake, kebab, and pascal ring a bell, you know the problems analysts can sometimes face… inconsitent taxonomy. This app helps solve that problem (unfortunately not the naming convention inconsistencies) by allowing you to standardize the output before the event payload is ingested by PostHog.

posthog apps taxonomy standardizer

Taxonomy Standardizer App Information

  • Link: https://app.posthog.com/project/apps?name=Taxonomy+Plugin
  • Authors: https://github.com/yakkomajuri

Conclusion

As you can see, PostHog apps are a great way to extend and customize PostHog in order to better fit your needs. Whether you’re looking to send event data to a data warehouse, pull data from a third-party API, add your own data, label events, or enforce event schemas, PostHog apps can help you get the most out of your customer data with minimal effort. Although the apps are tailored to specific scenarios, the fact that PostHog allows for the development of apps goes to prove how flexible their architecture is. It might not be as mature as other solutions on the market today, but it is paving a way to the top.
Tagticians is a official PostHog partner. Feel free to contact us with any implementation and configuration questions you might have.