Pricing & Packaging Tracker
Purpose
Track competitor pricing and packaging as a diffable time series, not a screenshot: capture (or
diff) → structure changes → price changes → signals → next-step options. The stable capture schema
is the point — run N diffs against run N-1, so the report is what moved, with evidence. And the
skill watches structure as closely as numbers, because packaging changes (gates, limits, tier
restructures) usually signal strategy earlier than price changes do: a tier that disappears telegraphs
a move upmarket months before the price list admits it.
Input
Works best with: the competitor set to track (or the snapshot they came from), and the prior
pricing capture if one exists — that's what turns this run into a delta report.
Also useful: your own pricing context, if the comparison should include you.
Input supplied inline with the invocation — text after the skill name, a pasted context dump, or an
appended ARGUMENTS: line — counts as answers already given. Use it against the question budget;
don't re-ask.
Arriving empty-handed? That works too. With no prior capture the skill runs baseline mode:
full capture per competitor, and the delta value starts next run. With no competitor list, it asks —
that's one of its two budget questions.
Example invocation: Pricing tracker on [Competitor A], [Competitor B], [Competitor C] — prior capture from April pasted below.
Key Concepts
- Governing protocol: honors the
autonomous-investigation
contract — question budget of 2, Fact/Inference/Assumption labels, Just Enough Mode, stable schema,
4-option Final Step. Discipline: SIGINT (pricing pages, site diffs) with FININT corroboration — see
intelligence-collection-disciplines.
- Time series, not screenshot. A single capture is trivia; the sequence is intelligence. The
schema never drifts between runs, because diffability is the entire value.
- Structure over numbers. Record tiers, billing units, feature gates, usage limits, free-tier
boundaries, and enterprise-floor signals — not just prices. The gate moves first; the price
follows.
- "Contact sales" is data, honestly labeled. Where pricing is opaque, track what is public
(editions, gates, published floors) and mark the rest. Infer only with labels; never invent
prices, tiers, limits, discounts, or negotiated figures.
- When NOT to use: you need pricing strategy advice →
finance-based-pricing-advisor (this tracks the
market; it doesn't set your price); pricing is fully opaque across the whole set → expect thin
results, and consider voice-of-customer-miner or win/loss
evidence instead.
Application
- Determine mode. Prior capture provided → delta mode (report changes only). None → baseline
mode (full capture, then stop).
- Credit inline context, then ask only the unanswered questions (max 2):
- Which competitors' pricing should I track?
- Prior capture to diff against, or is this the baseline?
- Capture from live pricing pages — plan-comparison pages, published rate cards, credible
pricing-change coverage — with URL and as-of date per competitor.
- Emit the schema below exactly — diffability is the point.
Output schema (do not reorder)
# Pricing Capture / Delta Report
## 1. Run Header
**Competitor set:** | **Prior capture date:** [or "baseline run"] | **This run date:**
## 2. Pricing Capture (per competitor)
### [Competitor] — [pricing page URL, as-of date]
- **Tiers:** [name: price / unit / billing terms, one bullet each]
- **Key gates:** [which capabilities gate which tier, 2-4 bullets]
- **Usage limits:** [the limits that matter, 1-2 bullets]
- **Free tier / trial:** [boundary, 1 bullet]
- **Enterprise signals:** [published floors, "contact sales" scope]
(Baseline mode: full capture per competitor. Delta mode: this section
only for competitors with changes.)
## 3. Changes Since Last Capture (Delta Mode)
### [Competitor] — [4 to 8 word change summary]
- **Then / Now:** [old -> new, labeled Fact]
- **Evidence:** [URL, date]
- **Reading:** [Inference — repositioning, monetization push, response to whom?]
If nothing changed: "No pricing or packaging changes this cycle."
## 4. Signals
- [Cross-competitor patterns: direction of the market's pricing, labeled]
- [Implications for your pricing or battle cards: 2-3 bullets]
### Assumptions to Validate
- [Assumption 1] / [Assumption 2] / [Assumption 3]
A copy/paste fill-in version of this schema, with quality checks, lives in template.md.
Final Step (offer exactly 4 options)
- Update battle card pricing sections from these changes (
battle-card-builder)
- Deep-dive one competitor's packaging logic
- Compare your pricing against this capture
- Set the cadence and watchlist for the next run
Accept 1, 2, 3, 4, 1 and 2, Verbose Mode, or a custom path.
Examples
A delta entry reading structure, not just price (fictional):
[Competitor B] — API access moved from Pro to new Scale tier
- Then / Now: API access included in Pro ($79/seat) → gated behind new "Scale" tier
($149/seat, 10-seat minimum) — Fact
- Evidence: [pricing page vs. archived capture, URL, dates]
- Reading: the price didn't change; the gate did. Developer-led accounts are being pushed
into a sales conversation — Inference: monetization push on their fastest-growing usage
pattern, and a window for us with API-first buyers while their community absorbs it.
The cross-competitor signal: three of four tracked competitors added usage-based add-ons this
quarter while holding seat prices flat — Inference: the market is testing consumption pricing
without headline price increases. Your pricing debate is no longer hypothetical; the Signals section
names the evidence.
See examples/sample.md for a complete worked delta run (fictional
FSM-software market) where both material moves are structural — a new tier and a relocated gate —
and no headline price changed at all. examples/sample-industrial.md
shows the fully opaque case: zero published prices, and structure as the only public signal.
Common Pitfalls
- Screenshot thinking. Capturing once and calling it competitive pricing intel. The value
compounds only on a cadence — baseline, then diff, forever.
- Number fixation. Reporting only price changes while a tier quietly gained a 5-seat minimum.
Structure is the leading indicator; watch the gates.
- Inventing the opaque. Filling "contact sales" cells with plausible figures. Publish the
honest boundary and label any inference — a battle card built on invented enterprise pricing
detonates in a live deal.
- Schema improvisation. Reordering or "improving" the capture format between runs breaks every
future diff. The schema is a contract with your own future runs.
- Tracking without a consumer. If no battle card, pricing review, or watch report consumes the
output, the cadence dies quietly. Wire the Final Step's first option into a real artifact.
References
1---2name: pricing-packaging-tracker3description: Track competitor pricing and packaging as a diffable time series. Use when monitoring tiers, gates, limits, and price moves on a monthly or quarterly cadence.4---56# Pricing & Packaging Tracker78## Purpose910Track competitor pricing and packaging as a **diffable time series**, not a screenshot: **capture (or11diff) → structure changes → price changes → signals → next-step options.** The stable capture schema12is the point — run N diffs against run N-1, so the report is what *moved*, with evidence. And the13skill watches structure as closely as numbers, because packaging changes (gates, limits, tier14restructures) usually signal strategy earlier than price changes do: a tier that disappears telegraphs15a move upmarket months before the price list admits it.1617## Input1819**Works best with:** the competitor set to track (or the snapshot they came from), and the prior20pricing capture if one exists — that's what turns this run into a delta report.21**Also useful:** your own pricing context, if the comparison should include you.2223Input supplied inline with the invocation — text after the skill name, a pasted context dump, or an24appended `ARGUMENTS:` line — counts as answers already given. Use it against the question budget;25don't re-ask.2627**Arriving empty-handed? That works too.** With no prior capture the skill runs **baseline mode**:28full capture per competitor, and the delta value starts next run. With no competitor list, it asks —29that's one of its two budget questions.3031**Example invocation:** `Pricing tracker on [Competitor A], [Competitor B], [Competitor C] — prior32capture from April pasted below.`3334## Key Concepts3536- **Governing protocol:** honors the [`autonomous-investigation`](../autonomous-investigation/SKILL.md)37 contract — question budget of 2, Fact/Inference/Assumption labels, Just Enough Mode, stable schema,38 4-option Final Step. Discipline: SIGINT (pricing pages, site diffs) with FININT corroboration — see39 [`intelligence-collection-disciplines`](../intelligence-collection-disciplines/SKILL.md).40- **Time series, not screenshot.** A single capture is trivia; the sequence is intelligence. The41 schema never drifts between runs, because diffability is the entire value.42- **Structure over numbers.** Record tiers, billing units, feature gates, usage limits, free-tier43 boundaries, and enterprise-floor signals — not just prices. The gate moves first; the price44 follows.45- **"Contact sales" is data, honestly labeled.** Where pricing is opaque, track what *is* public46 (editions, gates, published floors) and mark the rest. Infer only with labels; never invent47 prices, tiers, limits, discounts, or negotiated figures.48- **When NOT to use:** you need pricing *strategy* advice →49 [`finance-based-pricing-advisor`](../finance-based-pricing-advisor/SKILL.md) (this tracks the50 market; it doesn't set your price); pricing is fully opaque across the whole set → expect thin51 results, and consider [`voice-of-customer-miner`](../voice-of-customer-miner/SKILL.md) or win/loss52 evidence instead.5354## Application55561. **Determine mode.** Prior capture provided → delta mode (report changes only). None → baseline57 mode (full capture, then stop).582. **Credit inline context**, then ask only the unanswered questions (max 2):59 1. Which competitors' pricing should I track?60 2. Prior capture to diff against, or is this the baseline?613. **Capture from live pricing pages** — plan-comparison pages, published rate cards, credible62 pricing-change coverage — with URL and as-of date per competitor.634. **Emit the schema below exactly** — diffability is the point.6465### Output schema (do not reorder)6667~~~markdown68# Pricing Capture / Delta Report6970## 1. Run Header71**Competitor set:** | **Prior capture date:** [or "baseline run"] | **This run date:**7273## 2. Pricing Capture (per competitor)74### [Competitor] — [pricing page URL, as-of date]75- **Tiers:** [name: price / unit / billing terms, one bullet each]76- **Key gates:** [which capabilities gate which tier, 2-4 bullets]77- **Usage limits:** [the limits that matter, 1-2 bullets]78- **Free tier / trial:** [boundary, 1 bullet]79- **Enterprise signals:** [published floors, "contact sales" scope]8081(Baseline mode: full capture per competitor. Delta mode: this section82only for competitors with changes.)8384## 3. Changes Since Last Capture (Delta Mode)85### [Competitor] — [4 to 8 word change summary]86- **Then / Now:** [old -> new, labeled Fact]87- **Evidence:** [URL, date]88- **Reading:** [Inference — repositioning, monetization push, response to whom?]8990If nothing changed: "No pricing or packaging changes this cycle."9192## 4. Signals93- [Cross-competitor patterns: direction of the market's pricing, labeled]94- [Implications for your pricing or battle cards: 2-3 bullets]9596### Assumptions to Validate97- [Assumption 1] / [Assumption 2] / [Assumption 3]98~~~99100A copy/paste fill-in version of this schema, with quality checks, lives in [`template.md`](template.md).101102### Final Step (offer exactly 4 options)1031041. Update battle card pricing sections from these changes ([`battle-card-builder`](../battle-card-builder/SKILL.md))1052. Deep-dive one competitor's packaging logic1063. Compare your pricing against this capture1074. Set the cadence and watchlist for the next run108109Accept `1`, `2`, `3`, `4`, `1 and 2`, `Verbose Mode`, or a custom path.110111## Examples112113**A delta entry reading structure, not just price (fictional):**114115> ### [Competitor B] — API access moved from Pro to new Scale tier116> - **Then / Now:** API access included in Pro ($79/seat) → gated behind new "Scale" tier117> ($149/seat, 10-seat minimum) — **Fact**118> - **Evidence:** [pricing page vs. archived capture, URL, dates]119> - **Reading:** the price didn't change; the *gate* did. Developer-led accounts are being pushed120> into a sales conversation — **Inference**: monetization push on their fastest-growing usage121> pattern, and a window for us with API-first buyers while their community absorbs it.122123**The cross-competitor signal:** three of four tracked competitors added usage-based add-ons this124quarter while holding seat prices flat — **Inference:** the market is testing consumption pricing125without headline price increases. Your pricing debate is no longer hypothetical; the Signals section126names the evidence.127128See [`examples/sample.md`](examples/sample.md) for a complete worked delta run (fictional129FSM-software market) where both material moves are structural — a new tier and a relocated gate —130and no headline price changed at all. [`examples/sample-industrial.md`](examples/sample-industrial.md)131shows the fully opaque case: zero published prices, and structure as the only public signal.132133## Common Pitfalls134135- **Screenshot thinking.** Capturing once and calling it competitive pricing intel. The value136 compounds only on a cadence — baseline, then diff, forever.137- **Number fixation.** Reporting only price changes while a tier quietly gained a 5-seat minimum.138 Structure is the leading indicator; watch the gates.139- **Inventing the opaque.** Filling "contact sales" cells with plausible figures. Publish the140 honest boundary and label any inference — a battle card built on invented enterprise pricing141 detonates in a live deal.142- **Schema improvisation.** Reordering or "improving" the capture format between runs breaks every143 future diff. The schema is a contract with your own future runs.144- **Tracking without a consumer.** If no battle card, pricing review, or watch report consumes the145 output, the cadence dies quietly. Wire the Final Step's first option into a real artifact.146147## References148149- [`autonomous-investigation`](../autonomous-investigation/SKILL.md) (Workflow) — the governing protocol150- [`intelligence-collection-disciplines`](../intelligence-collection-disciplines/SKILL.md) (Component) — SIGINT sources: Wayback diffs, pricing-page monitoring151- [`competitive-intel-watch`](../competitive-intel-watch/SKILL.md) (Workflow) — the broader watch this tracker feeds152- [`battle-card-builder`](../battle-card-builder/SKILL.md) (Workflow) — consumes the pricing snapshot sections153- [`finance-based-pricing-advisor`](../finance-based-pricing-advisor/SKILL.md) (Interactive) — sets *your* price; this skill informs it with market evidence154- Adapted from `market-intelligence/pricing-packaging-tracker-prompt.md` in the155 `https://github.com/deanpeters/product-manager-prompts` repo.