Track and analyze your Claude Code usage with beautiful dashboards and competitive leaderboards. PromptPulse is a hosted service that automatically collects your usage data and provides insights across all your machines.
- Beautiful hosted dashboard built with Next.js and Recharts
- Multi-machine tracking - aggregate usage across all your devices
- Team collaboration - create teams and compare usage with colleagues
- Team leaderboards - compete within your team or organization
- Role-based team management - owner, admin, and member permissions
- Competitive leaderboards - compare your usage with other users (opt-in)
- Detailed analytics - daily costs, token usage, session tracking
- Project-based insights - see usage by project
- Granular email preferences - control exactly which notifications you receive
- Simple CLI - easy setup and data collection
npm install -g promptpulse# Create a free user account
promptpulse loginThis creates your secure user account and provides you with database access.
# Upload your Claude Code usage data
promptpulse collectVisit your personalized dashboard at: https://www.promptpulse.dev
# Collect all usage data (recommended)
promptpulse collect
# Collect specific granularity
promptpulse collect --granularity daily # Only daily aggregates
promptpulse collect --granularity session # Only session data
promptpulse collect --granularity blocks # Only 5-hour blocks
promptpulse collect --granularity all # Everything (default)Set up automatic data collection with cron to keep your dashboard up-to-date:
# Set up automatic collection (runs every 15 minutes by default)
promptpulse setup
# Configure different intervals
promptpulse setup --interval 30 # Every 30 minutes
promptpulse setup --interval 60 # Every hour
promptpulse setup --interval daily # Once daily at 9 AM
# Check collection status
promptpulse status
# Remove automatic collection
promptpulse setup --removeCollection logs are stored in ~/.promptpulse/collection.log for monitoring and debugging.
# Show current user info
promptpulse whoami
# Create new account
promptpulse loginpromptpulse --help
# or
ppulse --helpAccess your personalized dashboard to view:
- Real-time statistics - Total cost, tokens, and usage breakdowns
- Interactive charts - Daily cost trends and token usage over time
- Machine management - View usage across all your devices
- Session tracking - Detailed session and project analytics
- Dark mode support - Easy on the eyes during long coding sessions
- Team creation - Create teams for your organization or project groups
- Invite system - Share invite links to add team members
- Role management - Owner, admin, and member permissions
- Team leaderboards - Compare usage within your team
- Team analytics - Aggregate team usage statistics
- Privacy controls - Separate team and public leaderboard participation
- Daily & Weekly rankings - See how you stack up against other users
- Team leaderboards - Compete within your team or organization
- Opt-in participation - Complete control over your privacy
- Custom display names - Show a nickname instead of your username
- Separate team display names - Different names for team vs public contexts
- Percentile rankings - Know where you stand in the community
- Leaderboard settings - Enable/disable public and team participation separately
- Display name management - Control how you appear to others
- Team privacy - Separate controls for team vs public visibility
- Granular email preferences - 5 individual notification controls
- Private by default - Your data stays private unless you opt in
The leaderboard is completely opt-in. To participate:
- Visit your dashboard Settings page
- Enable "Leaderboard Participation"
- Optionally set a custom display name
- Your usage will appear in daily and weekly rankings
When leaderboard is enabled:
- Your token usage and costs are included in rankings
- Your username or display name is shown publicly
- Your ranking position and percentile are calculated
- No other personal information is shared
When leaderboard is disabled:
- Your data is completely private
- You can still view the leaderboard but won't appear on it
- You can re-enable participation at any time
PromptPulse reads your Claude Code usage data from:
~/.claude/projects/**/*.jsonl(default location)$CLAUDE_CONFIG_DIR/projects/**/*.jsonl(if custom path set)
This includes:
- Token usage (input, output, cache creation, cache read)
- Model information and pricing
- Timestamps and session data
- Cost calculations
PromptPulse collects usage statistics and metadata only:
- Usage Statistics: Token counts, costs, timestamps, model usage patterns
- Project Paths: Project folder names or paths (configurable privacy levels)
- Machine Identifiers: Hostname or custom MACHINE_ID for multi-device tracking
- Session Data: Session timestamps and duration for analytics
Your prompts and conversation content are NEVER uploaded or stored. PromptPulse only reads usage statistics from Claude Code's log files, not your actual conversations or prompts.
Project paths may contain sensitive information like company names or project names. You can control how project paths are collected:
# Set your privacy preference (choose one):
export PROJECT_PATH_PRIVACY=basename # Only folder names (recommended default)
export PROJECT_PATH_PRIVACY=none # No project paths collected
export PROJECT_PATH_PRIVACY=hash # Hashed paths for analytics
export PROJECT_PATH_PRIVACY=full # Full paths (least private)basename(default): Only collects project folder names (e.g.,my-project)none: No project path information is collected at allhash: Project paths are hashed for analytics while preserving privacyfull: Complete project paths are collected (e.g.,/home/user/work/company/my-project)
Leaderboard participation is completely opt-in:
- Private by default: Your usage data is private until you choose to participate
- Granular controls: Separate settings for public vs team leaderboards
- Display name privacy: Use custom display names instead of your username
- Team privacy: Different privacy controls for team vs public contexts
- Data Isolation: Each user's data is completely isolated
- No Sensitive Data: No conversation content, prompts, or personal information
- Secure Storage: Usage statistics are stored securely with encryption in transit
- All data is completely isolated between users
- Team features allow collaboration while maintaining privacy
- Role-based permissions for team management
- Development Teams - Create teams to compare usage and collaborate
- Organizations - Department-wide usage tracking and leaderboards
- Freelancers - Separate usage by client projects
- Personal - Track usage across work and personal machines
- Study Groups - Compare Claude usage for learning projects
promptpulse login # Create new account (interactive)
promptpulse logout # Clear authentication
promptpulse whoami # Show current userpromptpulse collect # Collect all data
promptpulse collect --granularity <type> # Collect specific datapromptpulse setup # Set up 15-minute automatic collection
promptpulse setup --interval 30 # Set up 30-minute collection
promptpulse setup --interval 60 # Set up hourly collection
promptpulse setup --interval daily # Set up daily collection
promptpulse setup --remove # Remove automatic collectionpromptpulse doctor # Diagnose common issues
promptpulse dashboard # Open web dashboardTeam features are managed through the web dashboard:
promptpulse dashboard # Open dashboard to manage teamsTeam Features (Dashboard Only):
- Create and manage teams with custom names and descriptions
- Generate and share team invite links
- Manage team member roles (owner, admin, member)
- View team usage leaderboards and analytics
- Join teams using invite codes
You can use ppulse as a shorthand for promptpulse in all commands.
PromptPulse now supports team features for collaborative Claude Code usage tracking:
- Open your dashboard at https://www.promptpulse.dev
- Navigate to the Teams section
- Click "Create Team" and provide a name and description
- Share the generated invite link with team members
- Receive an invite link from a team owner or admin
- Click the link to join the team automatically
- Your usage will now appear in team leaderboards (if enabled)
- Owner: Full team management, can promote/remove members
- Admin: Can invite members and manage team settings
- Member: Can view team leaderboards and participate
- Team participation is separate from public leaderboard participation
- You can have different display names for team vs public contexts
- Team usage data is aggregated but individual privacy is maintained
- "No usage data found" - Ensure you have used Claude Code and data exists in
~/.claude/projects/ - "Authentication failed" - Check your login session
promptpulse whoami - "Connection error" - Verify your internet connection and try again
- Use
promptpulse --helpfor command documentation - Diagnose issues with
promptpulse doctor - Ensure you have Claude Code usage data in
~/.claude/projects/
Contributions are welcome! Please:
- Fork the repository at github.com/eharris128/promptpulse
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
MIT License - see LICENSE.md for details
Ready to get started? Run promptpulse login and start tracking your Claude Code usage today!