BOOK A CALL
ALL POSTS ANALYTICS · AUGUST 20, 2026 · BY SUMMER LAMBERT·7 MIN READ

How to measure a product-led, self-serve funnel

Summer Lambert SUMMER LAMBERT · FOUNDER, RARE BIRD LAB

Measure a self-serve devtools funnel with three numbers that connect: signups, activation, and paid conversion. Signups tell you distribution is working. Activation tells you the product delivered its promise. Paid conversion tells you that promise was worth money. Everything else is context for those three. The hard parts are defining activation for a technical product, instrumenting the path without a real sales motion to lean on, and accepting that marketing attribution mostly does not work for developer buyers. This post is how I set it up. My post on measuring AI search visibility covered the same mindset applied to the top of the funnel: measure what is real, and do not invent precision the data cannot support.

What are the metrics that actually matter?

The three that matter form a chain: someone signs up, they reach a moment where the product proves itself, and they start paying. Track the rate at each step and the count moving through it, and you can see where the funnel leaks.

Signup is the easy one, and it is where most teams stop looking honestly. Signup volume goes up when a launch lands or a post ranks, which feels like progress. It is not, on its own. A signup is a stranger creating an account. It costs you nothing until they do something.

Activation is the number most devtools measure worst and care about most, once they understand it. It is the point where a new user experiences the thing your product is actually for. More on defining it below, because it is the whole game.

Paid conversion is signup to revenue, whether that runs through a self-serve credit card or a sales-assisted upgrade. The rate that matters here is activated-to-paid, not signup-to-paid. Blending them hides the truth, which is that unactivated users almost never pay and activated ones often do.

Keep two more as supporting cast, not headliners. Retention past the first week tells you whether activation stuck or was a one-time poke. Expansion tells you whether paying accounts grow. Both matter, but neither belongs at the top of a funnel report until the first three are solid.

How do you define activation for a technical product?

Activation is the first time a user does the thing that proves your product works for them, not the first time they finish onboarding. For a devtool, that is almost always a technical action, and it is rarely the one the signup flow celebrates.

Signing up is not activation. Reading the docs is not activation. Connecting an integration is closer but usually still setup. Activation is the moment the user gets the payoff. For an observability tool, it might be seeing their own trace in a dashboard. For a CI tool, a first green build on their real repo. For an API product, the first successful call from their own code, not the copy-paste sample in the quickstart. For a database, a query returning their data. The test is simple: after this event, does the user understand why they would keep using this? If yes, that is your activation event.

Pick one event and define it precisely enough to instrument. “The user saw value” is not measurable. “The user ran a query that returned at least one row from a table they created” is. You will argue about where to draw the line, and that argument is worth having with an engineer in the room, because they know which action in the product is the real aha and which is theater.

Then measure time to activation alongside the rate. A user who activates in ten minutes is a different animal from one who takes six days, even if both eventually count. The gap between signup and activation is where you find the friction worth fixing.

Why do attribution models break for PLG and developer buyers?

Standard marketing attribution assumes a visible path: a buyer clicks an ad, fills a form, gets nurtured, converts. Developer buyers do almost none of that, so the model records noise and misses the real journey.

Engineers evaluate tools in places you cannot see. They read a Hacker News thread, watch a conference talk, hear about you in a Slack community, try your open-source project on a weekend, and read your docs at midnight without ever identifying themselves. This is the dark funnel, and it is most of the funnel. By the time they sign up, the work of convincing them is already done, and none of it left a UTM parameter. The scale of this is not a devtools quirk. Gartner found that B2B buyers spend only 17 percent of the total purchase journey meeting with potential suppliers (Gartner), and for self-serve developer products even that number overstates how much of the evaluation you get to witness.

Last-touch attribution will happily tell you the signup came from “Direct” or from a branded Google search, and that is technically true and completely useless. The branded search is the shadow of the podcast they heard you on. Crediting the search is crediting the last domino instead of the finger that pushed the first one.

There is also a demand-timing problem underneath all of this. At any given moment most of your potential buyers are not looking to buy, which is the premise behind the widely cited 95-5 rule from the LinkedIn B2B Institute: roughly 95 percent of business buyers are out of market at any time. The person who signs up today may have first encountered you months ago when they had no need. No attribution window catches that.

So stop trying to force a clean source onto every signup. Two things work better. Ask the user directly with a “how did you hear about us” field on signup, and read the answers, because self-reported attribution is often the cleanest signal you get when the tracking is blind. And watch whether your dark-funnel investments move the whole curve: when you do a strong launch or a well-placed talk, does total qualified signup volume rise? That correlation, tracked over time, tells you more than any single-touch model. I wrote about running launches as measurable distribution events in the devtools launch playbook.

How do you instrument the signup-to-activation path?

Instrument events, not pageviews, and put the tracking in the product where the real actions happen, not just on the marketing site.

Start by writing down the events in the chain before you touch any tool: account created, key setup steps, activation event, first paid action. Name them consistently and decide what properties each one carries, like plan type, whether it is a real user or a teammate they invited, and the account they belong to. Do this first, on paper, because renaming events after the data starts flowing is miserable.

Then use a product analytics tool to capture those events and build the funnel as a cohort. You want to ask “of the users who signed up in July, what percentage activated within seven days, and what percentage of those paid within thirty,” not “how many total activations happened last month.” Cohorts show you whether the funnel is improving. Aggregate counts just track how fast you are growing, which is a different question.

A few things that save pain later. Track at the account level, not just the user level, because in devtools the person who signs up is often not the person who pays, and a team of five signups is one deal. And instrument the failure paths too. Knowing that 40 percent of users who start setup never finish it is worth more than any success metric, because it points straight at the fix.

Here is the funnel laid out with the metric that matters at each stage and where you measure it.

Funnel stageThe metric that mattersWhere you measure it
AcquisitionQualified signups, and self-reported sourceProduct analytics + a “how did you hear” field
Signup to activationActivation rate and time to activationProduct analytics, cohorted
Activation to paidActivated-to-paid conversion rateProduct analytics + billing data
RetentionWeek-1 and month-1 retention of activated usersProduct analytics, cohorted
ExpansionNet revenue retention on paying accountsBilling + product usage

How do you report this to a founder without vanity metrics?

Report the three-number chain as rates over time, with the counts next to them, and lead with the leak. A founder does not need a dashboard with forty tiles. They need to know where the funnel is losing people and whether last month’s work moved it.

The vanity trap is reporting totals that only go up. “We had 1,200 signups this month” means nothing without the activation rate underneath it, because 1,200 signups at a 12 percent activation rate is a worse month than 800 at 30 percent. Always pair a volume number with the conversion rate at the next step, so growth and quality sit side by side and neither can hide the other.

Frame every report around the constraint. If activation is the leak, the whole report is about activation this month: what the rate is, what you think is causing the drop-off, what you changed, and whether it moved. Next month the leak may be paid conversion, and the report follows it there. This keeps the conversation on the one thing worth fixing instead of a wall of numbers nobody acts on.

And be honest about attribution when the founder asks where signups came from, which they will. The answer is a range, not a source of record: here is what users self-report, here is what the trackable channels show, and here is why the two disagree. A founder who sells to developers can handle that answer. What they cannot use is false precision that falls apart the first time they poke it.

If you want help defining activation for your product and standing up a funnel report a founder will actually read, that is the kind of work I do at Rare Bird Lab. The case studies show what a full engagement produces, and you can get in touch to talk through yours.

Frequently asked questions

How do you define activation for a technical product?

Activation is the first time a user does the thing that proves your product works for them, not the moment they finish onboarding. For an observability tool it might be seeing their own trace in a dashboard, for an API product the first successful call from their own code, for a database a query returning their data. Pick one event, define it precisely enough to instrument, and argue it out with an engineer in the room who knows which action is the real aha.

Why does marketing attribution break for developer buyers?

Standard attribution assumes a visible path of ad click, form fill, and nurture, and developers do almost none of that. They evaluate you on Hacker News, in Slack communities, and in your docs at midnight without ever identifying themselves, so by the time they sign up the convincing is done and none of it left a UTM. Last-touch will credit Direct or branded search, which is technically true and useless, because it credits the last domino instead of the finger that pushed the first.

What metrics actually matter for a self-serve devtools funnel?

Three numbers that connect: signups, activation, and paid conversion. A signup only means someone showed up. Activation is the moment they actually get what the product promises, and paid conversion is proof that moment was worth money to them. Keep retention and expansion as supporting cast, and always measure activated-to-paid rather than signup-to-paid, since unactivated users almost never pay.

How do you report a PLG funnel to a founder without vanity metrics?

Report the three-number chain as rates over time with the counts next to them, and lead with the leak. Never show a volume number without the conversion rate at the next step, because 1,200 signups at 12 percent activation is a worse month than 800 at 30 percent. Frame the whole report around the current constraint, so the conversation stays on the one thing worth fixing instead of a wall of tiles.

GEO for Devtools playbook cover
Free field guide · 6 pages

Get the GEO for Devtools playbook

The 7 plays and one-page checklist to get your product cited by ChatGPT, Perplexity, and Google's AI Overview.

FREE · NO SPAM · UNSUBSCRIBE ANYTIME