A powerful console application for Chief Product Officers to analyze ProductBoard data and enforce strong hygiene practices.
This tool addresses the common frustration CPOs have with ProductBoard's lackluster reporting by providing comprehensive metrics on data freshness, identifying outdated content, and generating actionable recommendations for maintaining clean, organized product management workspaces.
As a Chief Product Officer, you know that:
- Stale features clutter your product roadmap
- Outdated insights mislead strategic decisions
- Ancient objectives create confusion in planning
- Poor hygiene reduces team productivity
This analyzer provides the metrics and visibility ProductBoard's native reporting lacks, helping you maintain a clean, actionable product management environment.
- π Comprehensive Analysis: Analyzes features, notes, objectives, initiatives, releases, and more
- π Age-based Classification: Categorizes items as Fresh, Stale, Outdated, or Ancient
- π― Hygiene Score: Calculates an overall hygiene score (0-100) for your ProductBoard workspace
- π¨ Beautiful Reporting: Colored console output with professional tables and charts
- π§ Flexible Thresholds: Customizable age thresholds for different hygiene categories
- β‘ Multiple Analysis Modes: Full analysis, quick stats, or specific item type analysis
- π Zero Configuration: Works out of the box with just your API token
- π Actionable Insights: Concrete recommendations for improving data hygiene
- Node.js 16+ installed
- ProductBoard Pro plan or higher (required for API access)
- ProductBoard API token
# Clone the repository
git clone https://github.com/Threatwrix/productboard-analyzer.git
cd productboard-analyzer
# Install dependencies
npm install
# Run setup guide
node index.js setup- Log in to your ProductBoard workspace
- Navigate to
Workspace SettingsβIntegrationsβPublic APIs - Click "Generate Access Token" (requires Pro plan or higher)
- Copy your token - it looks like
pb_1234567890abcdef
Choose your preferred method:
export PRODUCTBOARD_API_TOKEN=pb_your_actual_token_here
node index.js analyzecp .env.example .env
# Edit .env file: PRODUCTBOARD_API_TOKEN=pb_your_actual_token_here
node index.js analyzenode index.js analyze --token pb_your_actual_token_here# Full analysis with detailed reporting
node index.js analyze
# Quick executive summary only
node index.js analyze --quick
# Custom age thresholds for your organization
node index.js analyze --stale-days 60 --outdated-days 120 --ancient-days 300# Focus on features only
node index.js features --token your_token
# Analyze customer insights/notes
node index.js notes --token your_token
# All commands support the --token flag
node index.js analyze --token your_token --quick# Show all available commands
node index.js --help
# Interactive setup guide
node index.js setupDaily Standup: Get quick stats
node index.js analyze --quickWeekly Review: Full analysis with recommendations
node index.js analyzeFeature Planning: Focus on feature hygiene
node index.js featuresQuarterly Review: Custom thresholds for deeper analysis
node index.js analyze --stale-days 45 --outdated-days 90 --ancient-days 180| Category | Age Range | Color | Meaning |
|---|---|---|---|
| π’ Fresh | < 3 months | Green | Recently created/updated, active |
| π‘ Stale | 3-6 months | Yellow | Getting old, may need attention |
| π Outdated | 6-12 months | Orange | Likely obsolete, review required |
| π΄ Ancient | 12+ months | Red | Definitely outdated, immediate action needed |
The hygiene score (0-100) weighs your items based on freshness:
| Score Range | Grade | Status | Action Required |
|---|---|---|---|
| 80-100 | π Excellent | Most items are fresh | Maintain current practices |
| 60-79 | β Good | Minor cleanup needed | Schedule quarterly review |
| 40-59 | Significant old items | Monthly cleanup required | |
| 0-39 | π¨ Critical | Major hygiene issues | Immediate action required |
- Fresh items: 100% weight
- Stale items: 70% weight
- Outdated items: 30% weight
- Ancient items: 10% weight
π PRODUCTBOARD HYGIENE ANALYSIS REPORT
============================================================
π EXECUTIVE SUMMARY
------------------------------
ββββββββββββββββββββββββ¬βββββββββ¬ββββββββββββββ
β Metric β Count β Percentage β
ββββββββββββββββββββββββΌβββββββββΌββββββββββββββ€
β Total Items β 1,247 β 100.0% β
β Fresh (< 3 months) β 823 β 66.0% β
β Stale (3-6 months) β 187 β 15.0% β
β Outdated (6-12 months) β 142 β 11.4% β
β Ancient (12+ months) β 95 β 7.6% β
ββββββββββββββββββββββββ΄βββββββββ΄ββββββββββββββ
π‘ RECOMMENDATIONS
-------------------------
1. π Review 95 ancient features (oldest: Legacy User Management)
2. β οΈ MEDIUM PRIORITY: 18.4% of items are 6+ months old - schedule review
3. π LOW PRIORITY: 33.0% of items are 3+ months old - consider updating
π― HYGIENE SCORE
--------------------
Overall Score: 71/100 (GOOD)
productboard-analyzer/
βββ index.js # Main CLI application
βββ lib/
β βββ productboard-client.js # API client for ProductBoard
β βββ data-fetcher.js # Data fetching orchestration
β βββ hygiene-analyzer.js # Age analysis and metrics calculation
β βββ reporter.js # Console reporting and formatting
βββ package.json
βββ .env.example
βββ README.md
This tool analyzes the following ProductBoard data types:
- Features - Your product features and enhancements
- Notes - Customer insights and feedback
- Objectives - Strategic goals and outcomes
- Initiatives - Major projects and efforts
- Releases - Product releases and versions
- Release Groups - Collections of related releases
- Components - Product components and modules
- Products - Your product portfolio
- Companies - Customer organizations
- Users - Team members and stakeholders
# Conservative approach (shorter cycles)
node index.js analyze --stale-days 30 --outdated-days 90 --ancient-days 180
# Lenient approach (longer cycles)
node index.js analyze --stale-days 120 --outdated-days 240 --ancient-days 480# Set default thresholds
export PB_STALE_DAYS=60
export PB_OUTDATED_DAYS=120
export PB_ANCIENT_DAYS=240This tool was designed for CPOs frustrated with ProductBoard's reporting limitations. Contributions welcome:
- Bug reports: Open an issue with detailed steps to reproduce
- Feature requests: Describe your use case and desired functionality
- Code contributions: Fork, create a feature branch, and submit a PR
- Documentation: Help improve setup guides and examples
git clone https://github.com/Threatwrix/productboard-analyzer.git
cd productboard-analyzer
npm install
npm run devMIT License - feel free to use this in your organization and modify as needed.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- ProductBoard API Docs: Developer Reference
Built by CPOs, for CPOs - Because ProductBoard's native reporting just isn't enough. π