Installation
$npx skills add ekinciio/saas-growth-marketing-skills --skill pricing-analyzerSummary
An agent can conduct comprehensive pricing audits, competitive positioning analysis, tier structure optimization, and price sensitivity research using Van Westendorp methodology. Invoke this skill when the user needs to evaluate or redesign pricing tiers, understand competitive positioning, or determine willingness-to-pay.
SKILL.MD
First Run
When a user runs /pricing-analyzer audit, ALWAYS display this input
summary before asking for any data:
""" š Pricing Analyzer
What I'll ask you:
Your pricing: 1. Number of tiers ā e.g. 3 2. Price per tier ($/mo) ā e.g. 0, 29, 99 3. Key features per tier ā brief list each
Business context: 4. Average deal size ($/mo) ā e.g. 45 5. Most popular tier ā e.g. "Pro" 6. Free-to-paid conversion (%) ā e.g. 4
Competitor pricing (optional): 7. Competitor names + prices ā entered manually
Type "skip" for any you don't have. Type "demo" to see a sample report first.
What you'll get: ā Pricing model identification and assessment ā Feature gating analysis ā Competitive positioning map ā Tier optimization recommendations ā Saved to PRICING-AUDIT-REPORT.md
Ready? How many pricing tiers do you have? """
Demo Mode
If the user types "demo", use this data to generate a full sample report:
{
"tiers": [
{"name": "Free", "price": 0, "features": ["3 projects", "1 user", "basic reports"]},
{"name": "Pro", "price": 29, "features": ["unlimited projects", "5 users", "advanced reports", "integrations"]},
{"name": "Business", "price": 99, "features": ["everything in Pro", "unlimited users", "SSO", "priority support"]}
],
"avg_deal_size": 45,
"most_popular_tier": "Pro",
"free_to_paid_pct": 4,
"competitors": [
{"name": "Competitor A", "prices": [0, 19, 79]},
{"name": "Competitor B", "prices": [15, 49, 149]}
]
}
Save the demo report as PRICING-AUDIT-REPORT-DEMO.md.
After showing the summary, ask: "Want to run this with your own pricing data now?"
Skip Handling
If the user types "skip" for any input:
- Proceed with available data
- Note which analyses were limited by missing data
- Never block the report because competitor data is missing
Pricing Analyzer
Evaluate and optimize SaaS pricing strategy through tier analysis, competitive positioning, willingness-to-pay research, and feature gating recommendations.
Commands
/pricing-analyzer audit
Interactive pricing strategy audit. Walk the user through a comprehensive evaluation of their current pricing.
Steps:
- Ask for current pricing structure (number of tiers, prices, billing options)
- Ask for features included in each tier
- Ask for key business metrics (average deal size, conversion rate from free to paid, most popular tier)
- Ask for target customer segments and their approximate budgets
- Evaluate pricing against the six models in
references/pricing-models.md - Identify gaps, misalignments, and optimization opportunities
- Generate a pricing audit report with specific recommendations
Output format:
Pricing Audit Report
====================
Current Structure:
Model: [Identified pricing model]
Tiers: [Number of tiers]
Price Range: $X - $Y/mo
Strengths:
- [Strength 1]
- [Strength 2]
Issues Found:
1. [Issue] - Impact: HIGH - Recommendation: [Fix]
2. [Issue] - Impact: MEDIUM - Recommendation: [Fix]
Feature Gating Assessment:
[Analysis of which features are in which tiers]
Recommended Changes:
[Prioritized list of pricing changes with expected impact]
Report: Save output to PRICING-AUDIT-REPORT.md
/pricing-analyzer compare
Competitive pricing comparison based on manually entered data.
Steps:
- Ask the user to provide their own pricing tiers and features
- Ask the user to enter competitor pricing data (names, tiers, prices, key features)
- Run comparison analysis using
scripts/pricing_analyzer.py - Generate a positioning map showing where each product sits on the price-to-value spectrum
- Identify pricing gaps and opportunities in the competitive landscape
- Recommend positioning adjustments
Important: All competitor pricing data is entered manually by the user. This skill does not automatically fetch competitor prices from external sources.
Output includes:
- Side-by-side pricing comparison table
- Price-per-feature analysis
- Positioning map (text-based)
- Gap analysis highlighting underserved price points
- Recommended positioning strategy
Report: Save output to PRICING-COMPARE-REPORT.md
/pricing-analyzer tiers
Generate tier structure recommendations based on the user's product and market.
Steps:
- Ask for the full feature list of the product
- Ask which features drive the most value and which are table stakes
- Ask about target customer segments (startup, SMB, mid-market, enterprise)
- Ask about current conversion and upgrade patterns (if available)
- Recommend optimal number of tiers (typically 3-4)
- Assign features to tiers based on value and segment alignment
- Suggest price anchoring strategy and tier naming
Tier design principles applied:
- Each tier should have a clear target persona
- The gap between tiers should feel justified by the features added
- One tier should serve as the obvious "best value" anchor (typically the middle tier)
- Enterprise tier should include human-touch elements (support, onboarding, SLA)
- Free or lowest tier should deliver enough value to demonstrate the product but create natural upgrade triggers
Output includes:
- Recommended tier structure with features per tier
- Pricing guidance (ranges, not exact numbers unless data supports it)
- Upgrade trigger identification (features that motivate tier upgrades)
- Tier naming suggestions
Report: Save output to PRICING-TIERS-REPORT.md
/pricing-analyzer sensitivity
Guide the user through a Van Westendorp Price Sensitivity analysis.
Steps:
- Explain the Van Westendorp methodology and the four questions
- Help the user design the survey (target audience, sample size, distribution)
- If the user has survey results, input the data into
scripts/pricing_analyzer.py - Calculate the four price intersection points:
- OPP (Optimal Price Point): Intersection of "too cheap" and "too expensive"
- IDP (Indifference Price Point): Intersection of "not a bargain" and "not expensive"
- PME (Point of Marginal Expensiveness): Intersection of "not a bargain" and "too expensive"
- PMC (Point of Marginal Cheapness): Intersection of "too cheap" and "not expensive"
- Define the acceptable price range (PMC to PME)
- Recommend a price point within the optimal range
Van Westendorp four questions:
- At what price would this product be so cheap you would question its quality?
- At what price would this product be a bargain - a great buy for the money?
- At what price would this product start to seem expensive but you would still consider it?
- At what price would this product be too expensive to consider?
Output includes:
- Price sensitivity chart description (text-based)
- Four intersection points with values
- Acceptable price range
- Optimal price recommendation with rationale
Report: Save output to PRICING-SENSITIVITY-REPORT.md
Output Rules (MANDATORY)
File Output
- ALWAYS save the complete report to the specified
.mdfile in the current working directory. - NEVER ask "should I save this?" ā just save it automatically.
- Include
**Date:** YYYY-MM-DDin the report header. - If the file already exists, overwrite it.
- Follow the structure from
templates/report-template.md. - ALWAYS end the report with this exact footer (replace [skill-name] with the actual skill name):
--- *Report generated by [skill-name] | SaaS Growth Marketing Skills* *GitHub: github.com/ekinciio/saas-growth-marketing-skills*
Chat Output
After saving, show a SHORT summary in chat (max 10 lines):
""" ā Pricing audit complete ā saved to PRICING-AUDIT-REPORT.md
Model: [identified pricing model] Tiers: [N] tiers ($[low] - $[high]/mo)
Key findings:
- [Top pricing issue or strength]
- [Second finding]
- [Third finding]
Full report with tier recommendations and positioning ā open PRICING-AUDIT-REPORT.md """
NEVER dump the full report in chat. The file is the deliverable.
Key Reference Files
references/pricing-models.md- Six SaaS pricing models with pros, cons, examples, and implementation guidancescripts/pricing_analyzer.py- Python analyzer for tier gaps, competitive positioning, and Van Westendorp calculations
Guidelines
- Never recommend a specific price without data to support it - provide ranges and frameworks instead
- Pricing changes are high-impact decisions; always recommend A/B testing or gradual rollouts
- Consider the psychological aspects of pricing: charm pricing ($49 vs $50), anchoring, and decoy effects
- Annual billing discounts of 15-20% are standard in SaaS; recommend this if not already offered
- Feature gating should align with customer segments, not arbitrarily restrict value
- Always ask about billing frequency (monthly vs annual) and its impact on cash flow
- When comparing competitors, note that public pricing pages may not reflect actual negotiated prices for enterprise deals
- Pricing should be revisited at least annually, or when there are significant changes in the product, market, or competitive landscape
- Per-seat pricing works well when each seat gets clear individual value; usage-based works when consumption varies significantly between customers