Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Tactical PM PRD for pricing experiments and pricing-page launches. Pairs with business-growth/pricing-strategy. Covers packaging, willingness-to-pay, grandfathering, A/B design, rollback, regional pricing, and UX.
.claude/skills/borghei-pricing-prd/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 86% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 47% | 0% |
| case-09 | ✗→✓ | ▲ Improved | -29% | 0% |
| case-19 | ✗→✓ | ▲ Improved | 33% | 0% |
| case-06 | ✓→✓ | = Same ✓ | 48% | 0% |
A pricing PRD is the tactical artifact that converts a pricing strategy into a shipped change. Where business-growth/pricing-strategy/ decides "we are moving from per-seat to per-usage and adding an enterprise tier", a pricing PRD decides "here is the page, the experiment, the rollout, and the rollback". Most PMs underinvest in this artifact — they treat pricing as a marketing problem until the rollout breaks revenue.
This skill is opinionated about the structure of a pricing PRD (distinct from a feature PRD), the discipline of pricing experiments (small samples + revenue sensitivity == high risk of false-positive readouts), grandfathering and communication (the most-often-skipped sections that cause the most damage), A/B testing pricing without confusing customers or violating consumer-law principles, and rollback criteria written in advance rather than improvised under pressure. The frameworks behind it: Patrick Campbell's "Pricing as a feature", Ramanujam's Monetizing Innovation, Van Westendorp's Price Sensitivity Meter, Reforge pricing experimentation, and Stripe's pricing-page patterns.
When NOT to use: for the strategic question "should we change pricing at all?" (use business-growth/pricing-strategy/); for the financial-modeling side (use finance/ skills); for SKU/billing implementation (engineering tickets generated from this PRD).
Before generating the pricing PRD, confirm these inputs. If any is unknown or vague, ASK — do not assume:
Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
Pull the reference that matches the task; keep this file lean and load detail on demand.
In Scope: Tactical pricing PRD authoring, willingness-to-pay research summary (Van Westendorp, conjoint), packaging decisions, grandfathering policy, customer/sales/support communication plan, A/B test design, rollback criteria, regional pricing decisions, pricing-page UX checklist, anti-pattern avoidance.
Out of Scope: Strategic pricing question "should we change pricing at all?" (see business-growth/pricing-strategy/). Financial modeling and revenue projection (see finance/). Billing and subscription-management implementation (engineering tickets). Detailed conjoint analysis methodology (specialist tooling). Legal review of pricing terms in regulated jurisdictions (must involve actual legal counsel; this skill is not legal advice).
Important Caveats:
| Integration | Direction | What flows | |---|---|---| | business-growth/pricing-strategy/ | Receives from | Strategic direction (new model, new tier, new segment) becomes the input to the tactical PRD | | create-prd/ | Extends | Pricing PRD uses sections 1-2 of standard PRD plus 11 pricing-specific sections | | feature-flag-strategy/ | Feeds into | Pricing rollout uses feature flags for tier entitlements and rollback | | activation-funnel/ | Bidirectional | Pricing changes affect activation rates; activation funnel measures the impact | | customer-feedback-triage/ | Receives from | Pricing-related feedback clusters surface willingness-to-pay signals and bill-shock issues | | finance/ | Bidirectional | Finance models the revenue projection; pricing PRD constrains the model assumptions | | senior-pm/ | Feeds into | Pricing change becomes a portfolio risk and an executive update item | | prfaq/ | Feeds into | A new pricing model often warrants a PR/FAQ for internal alignment | | eol-communication/ | Pattern overlap | EOL of a pricing tier uses similar grandfathering and communication patterns | | launch-playbook/ | Feeds into | Pricing-page launch follows standard launch playbook for internal/external comm coordination |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 28,428 | 36,392 | +28% | 1 | 1 | 0% | 4,418 | 7,119 | +61% | 0 | 0 | — |
case-02 | fail→fail | 39,991 | 37,508 | -6% | 1 | 1 | 0% | 6,194 | 7,470 | +21% | 0 | 0 | — |
case-03 | fail→fail | 27,885 | 28,358 | +2% | 1 | 1 | 0% | 4,188 | 5,981 | +43% | 0 | 0 | — |
case-04 | fail→pass | 17,449 | 22,119 | +27% | 1 | 1 | 0% | 2,684 | 4,980 | +86% | 0 | 0 | — |
case-05 | fail→pass | 19,787 | 17,478 | -12% | 1 | 1 | 0% | 2,860 | 4,191 | +47% | 0 | 0 | — |
case-06 | pass→pass | 20,813 | 19,424 | -7% | 1 | 1 | 0% | 3,019 | 4,477 | +48% | 0 | 0 | — |
case-07 | pass→pass | 15,574 | 15,925 | +2% | 1 | 1 | 0% | 2,337 | 4,065 | +74% | 0 | 0 | — |
case-08 | fail→fail | 21,374 | 22,086 | +3% | 1 | 1 | 0% | 3,097 | 4,987 | +61% | 0 | 0 | — |
case-09 | fail→pass | 28,963 | 15,426 | -47% | 1 | 1 | 0% | 6,191 | 4,367 | -29% | 0 | 0 | — |
case-10 | fail→fail | 21,192 | 19,576 | -8% | 1 | 1 | 0% | 4,061 | 5,532 | +36% | 0 | 0 | — |
case-11 | pass→pass | 17,803 | 16,867 | -5% | 1 | 1 | 0% | 2,528 | 4,147 | +64% | 0 | 0 | — |
case-12 | pass→pass | 15,766 | 29,085 | +84% | 1 | 1 | 0% | 2,408 | 6,141 | +155% | 0 | 0 | — |
case-13 | pass→pass | 18,502 | 21,217 | +15% | 1 | 1 | 0% | 2,704 | 4,759 | +76% | 0 | 0 | — |
case-14 | pass→pass | 21,727 | 40,792 | +88% | 1 | 1 | 0% | 3,178 | 7,949 | +150% | 0 | 0 | — |
case-15 | pass→pass | 16,264 | 25,521 | +57% | 1 | 1 | 0% | 2,361 | 5,453 | +131% | 0 | 0 | — |
case-16 | pass→pass | 20,920 | 28,060 | +34% | 1 | 1 | 0% | 3,099 | 5,997 | +94% | 0 | 0 | — |
case-17 | pass→pass | 18,708 | 17,383 | -7% | 1 | 1 | 0% | 2,893 | 4,341 | +50% | 0 | 0 | — |
case-18 | pass→pass | 17,127 | 14,407 | -16% | 1 | 1 | 0% | 2,465 | 3,742 | +52% | 0 | 0 | — |
case-19 | fail→pass | 17,164 | 11,935 | -30% | 1 | 1 | 0% | 2,629 | 3,500 | +33% | 0 | 0 | — |
case-20 | pass→pass | 18,982 | 13,840 | -27% | 1 | 1 | 0% | 2,686 | 3,665 | +36% | 0 | 0 | — |
case-21 | pass→pass | 14,993 | 34,168 | +128% | 1 | 1 | 0% | 2,353 | 6,976 | +196% | 0 | 0 | — |
case-22 | pass→pass | 17,683 | 33,348 | +89% | 1 | 1 | 0% | 2,623 | 6,628 | +153% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +18 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.