PostHog Handbook Library / Marketing

1,814 words. Estimated reading time: 9 min.

Paid ads

Auto TL;DR

At a Glance

This long page covers these main areas. The list is generated from the article headings, so it updates with every handbook rebuild.

  1. How we run paid campaigns
  2. How and when we use LLMs for paid ads
  3. How we allocate budget
  4. How we measure campaigns
  5. Conversion campaigns
  6. Awareness campaigns
  7. What we cannot measure perfectly
  8. Channels

Paid ads sit with the . They have two jobs: capture demand that already exists and introduce PostHog to people our brand and content do not reach on their own.

We broadly split our budget 50/50 between conversion and awareness.

Ads are expensive, so we typically only advertise individual tools once they are generally available, have pricing, and have a feature set broadly on par with the main competitors.

Unlike most demand gen teams, we do not optimize for demo bookings. PostHog is self-serve, so our ads should help someone understand the product and start using it without talking to sales. We're very much a PLG company and are proud of it. However, we may add some ABM ad efforts in the future.

How we run paid campaigns

Every meaningful campaign should move through the same loop:

We run experiments on a rolling basis to improve performance, but we work hard to avoid testing paralysis. If something works, we go for it; if it does not, we try something new. We do not fix what is not broken, but no campaign should go more than 30 days without a touch from the demand gen team, and we do not spend budget just because it is available.

How and when we use LLMs for paid ads

Demand gen is a small team, so using AI to extend our capacity is critical, but we limit it to optimization with a human in the loop. We use a Scout to keep tabs on current campaign and creative performance via messages in Slack, and the Windsor.ai and PostHog MCPs to investigate the data.

All campaign ideation, creative work, strategy, media plans, and monthly Growth Reviews are designed and written by humans.

How we allocate budget

We use a 50/50 conversion and awareness split to make sure that we're educating as much as we're driving lower-funnel conversion, then adjust within each half:

We are not moving away from conversion campaigns. Search will remain the backbone of PostHog's ad strategy because we must always be ready to capture high-intent conversions. We're scaling awareness campaigns as they bring the right people to PostHog at an efficient cost without annoying potential users with an onslaught of repeated ads.

Brian Young and <a href="https://www.heydigital.co/">Hey Digital</a> build the next month's media plan one week before that month starts, while Brian is preparing the Growth Review. Charles Cook approves the monthly cap at the same time. The media plan is not set in stone, and we update it as reporting comes in.

We use Engaged Visits and platform delivery metrics for early decisions, then compare those signals with signups, Healthy Orgs, and revenue as the results mature. Brian uses that data to reallocate budget within the monthly cap. When spend needs to exceed the cap, Brian and Charles work through the increase together, update the media plan, and record the decision in the Growth Review.

How we measure campaigns

Ad platforms deliver the ads and help us diagnose delivery via CTRs and impressions. Because we do not use their third-party pixels, we're somewhat limited in how effectively we can use their algorithms. The PostHog CDP still sends conversions back to each platform in the form of Click IDs and hashed user emails for use in tCPA/tROAS campaigns and to share data on the success of our awareness campaigns.

PostHog's Context Warehouse is the data backend. The paid marketing dashboard is the live view, the media plan is where we keep budget and pacing, and the monthly Growth Review is where we make and record decisions.

Conversion campaigns

We use the following sequence to judge conversion campaigns:

See the Google Ads report for non-freemail signups by product over the last 12 weeks.

Awareness campaigns

Depending on the campaign objective, we use a combination of impressions, reach, frequency, completed video views, unique paid visitors, and Engaged Visits to judge awareness campaigns.

An Engaged Visit has at least two pageviews, an autocaptured interaction, or 10 seconds on the site. Its purpose is to indicate whether the audience and creative lead someone to engage with PostHog in a way that suggests they are interested in our offering and want to learn more.

What we cannot measure perfectly

We cannot track people across devices. This means:

This lack of attribution is a bit of a barrier, but we do have some qualitative data from the signup referral report, based on what people tell us during signup. However, this data is noisy and really only gives us insight into the channel, not the creative or campaign that resulted in the conversion.

We treat awareness metrics as directional and only use conversion metrics for decisions they can support.

Channels

We currently run ads on:

We have previously tried and no longer use ChatGPT ads, Bing, Product Hunt, Carbon Ads, and Google Display because they did not help us meet our goals and distracted us from honing in on our best-performing ad platforms. We may try them again in the future as capacity allows.

Where a channel allows it, we focus on the US, Canada, UK, Germany, and France. We prefer targeting desktop users when the goal is conversion because PostHog is mainly used on desktop.

Privacy and conversion optimization

We use PostHog and the PostHog CDP instead of third-party trackers or pixels like Google Tag Manager.

We follow these principles:

Creative and landing pages

We change up campaigns frequently, but generally advertise the PostHog brand, self-driving, and individual products. All current copy can be found in the search ad copy sheet, and it is updated regularly.

We test both unhinged and enterprise coded ads. More and more, we find that enterprise coded ads perform just as well as, or slightly better than, our unhinged versions, but we feel experimenting with unhinged copy and ads is important for the brand.

For static creative, request artwork from the using the art request process, or, if it is generated by Hey Digital, submit it in #design-review to be checked by Lottie Coxon. For video, start with #team-video. For UGC, we get most of our content from #influence-wrangling via Adlet Smykov. We run ads from 6 to 60 seconds and from 9:16 to 16:9 because Shorts, Reels, YouTube, and connected TV have different completion rates and placement requirements.

We sometimes spin up landing pages for tests. Simplified versions of our docs outperformed previous product pages, but has now designed the existing product pages to use a similar format. When a landing page teaches us something useful, we pass the result to the website team rather than maintaining a permanent fleet of ad-only pages that may become out of sync with products as we ship new and better features.

Partners and roles

We work with Hey Digital to set up campaigns, lightly modify existing content for ads, help with some web design, and provide a second pair of eyes on pacing and spend. We share a Slack channel for day-to-day communication, and Brian Young has a monthly check-in with them.

We also have monthly calls with partner teams at Google, Reddit, and LinkedIn. Their advice can help diagnose platform performance, but PostHog data decides whether a campaign is working for us.

Within the demand gen team:

Growth review

Brian Young runs a monthly Growth Review with Cory Slater, and Charles Cook. It is shared in <a href="https://posthog.slack.com/archives/C0ALU3889A6">#group-marketing-content-brand</a> and <a href="https://posthog.slack.com/archives/C06LMMS3YP4">#team-blitzscale</a>. We use it to reflect on the previous month's performance and plan the next one using leading indicators, while also checking longer-term performance through lagging results. It covers our broader marketing funnel, including organic, paid ads, and influencer spend.

See the Growth Review source sheet and monthly commentary.

Canonical URL: https://posthog.com/handbook/marketing/paid

GitHub source: contents/handbook/marketing/paid.md

Content hash: 60b0337ac53e0666

Static reader notes
  • MDX_COMPONENT_STATIC_ADAPTER: Adapted interactive MDX components for static reading: PrivateLink, SmallTeam, TeamMember.