Skip to main content
Featured

Deployment Frequency

November 10, 2025By The Art of CTO7 min read
...
metrics

Track how often your team deploys to production. A key DORA metric that indicates your team's ability to deliver value continuously.

Type:velocity
Tracking: daily
Difficulty:easy
Measurement: Number of deployments per day/week
Target Range: Elite: Multiple per day | High: Weekly to monthly | Medium: Monthly to bimonthly | Low: Less than bimonthly
Recommended Visualizations:line-chart, bar-chart, gauge
Data Sources:GitHub Actions, GitLab CI, Jenkins, CircleCI, Deployment tracking tools

Overview

Deployment Frequency measures how often your organization successfully releases to production. It's one of the four key DORA (DevOps Research and Assessment) metrics and a critical indicator of your team's velocity and agility.

Why It Matters

  • Faster feedback loops: More frequent deployments mean faster learning and iteration
  • Reduced risk: Smaller, more frequent changes are easier to test and rollback
  • Competitive advantage: Ship features and fixes to customers faster
  • Team morale: Visible progress and impact boosts team satisfaction
  • Business agility: Respond quickly to market changes and customer needs

How to Measure

Data Sources

  • CI/CD pipelines: GitHub Actions, GitLab CI, Jenkins, CircleCI
  • Deployment tools: Kubernetes, AWS CodeDeploy, Heroku, Vercel
  • Git tags: Release tags in your version control system
  • Monitoring tools: DataDog, New Relic, PagerDuty deployment markers

Calculation

Deployment Frequency = Total Deployments ÷ Time Period

Examples:
- 20 deployments in 5 days = 4 per day
- 12 deployments in 4 weeks = 3 per week

What to Count

  • Include: All successful production deployments
  • Include: Hotfixes and emergency releases
  • Include: Automated and manual deployments
  • Exclude: Failed deployment attempts
  • Exclude: Staging/dev environment deployments
  • Exclude: Rollbacks (unless they deploy new code)

1. Line Chart (Trend Over Time)

Best for: Showing deployment frequency trends

Y-axis: Deployments per day
X-axis: Time (weeks/months)
Lines: Different teams or services

📈 Deployment Frequency Trend

Sample data showing improvement from 2.1 to 5.2 deployments per day over 8 weeks. The green dashed line represents the Elite threshold (4+ per day).

2. Gauge (Current State)

Best for: Executive dashboards

Gauge ranges:
- Elite: 10+ per day (green)
- High: 1-10 per day (blue)
- Medium: 1 per week (yellow)
- Low: < 1 per week (red)

🎯 Current Performance

Deployments per Day

4.2
High (42.0%)
010

Current deployment frequency at 4.2 per day places the team in the Elite category (10+ per week).

Target Ranges (DORA Benchmarks)

| Performance Level | Deployment Frequency | |------------------|---------------------| | Elite | Multiple times per day | | High | Between once per day and once per week | | Medium | Between once per week and once per month | | Low | Fewer than once per month |

Industry Context

  • Startups: Aim for Elite (multiple per day)
  • SaaS companies: Target High to Elite
  • Enterprise: Medium to High is common
  • Regulated industries: Medium may be appropriate

How to Improve

1. Automate Everything

  • Implement CI/CD pipelines
  • Automate testing (unit, integration, E2E)
  • Automated rollback mechanisms
  • Infrastructure as Code (IaC)

2. Reduce Batch Size

  • Break large features into smaller pieces
  • Use feature flags for gradual rollouts
  • Deploy incomplete features behind flags
  • Merge PRs more frequently

3. Improve Testing

  • Increase test coverage
  • Speed up test suites (parallel execution)
  • Implement smoke tests
  • Add automated security scanning

4. Cultural Changes

  • Celebrate deployments
  • Remove deployment approval bottlenecks
  • Empower teams to deploy
  • Post-mortems without blame

5. Technical Improvements

  • Containerization (Docker, Kubernetes)
  • Blue-green deployments
  • Canary releases
  • Database migration strategies

Common Pitfalls

❌ Gaming the Metric

Problem: Teams deploy trivial changes to inflate numbers Solution: Track deployment size and impact alongside frequency

❌ Quality Sacrifice

Problem: Deploying broken code to hit targets Solution: Monitor Change Failure Rate and MTTR together

❌ Wrong Baseline

Problem: Comparing teams with different contexts Solution: Segment by service type (frontend vs. backend vs. mobile)

❌ Ignoring Dependencies

Problem: High frequency for frontend, but backend blocks releases Solution: Track deployment frequency by service and identify bottlenecks

Implementation Guide

Week 1: Instrumentation

  1. Set up deployment tracking in CI/CD
  2. Create a data pipeline to your metrics dashboard
  3. Tag deployments with metadata (team, service, environment)

Week 2: Baseline

  1. Measure current frequency for 2 weeks
  2. Identify patterns (day of week, time of day)
  3. Document current process and pain points

Week 3: Quick Wins

  1. Remove unnecessary approval steps
  2. Speed up the slowest test
  3. Deploy once per day for one service

Week 4: Scaling

  1. Share learnings with other teams
  2. Set team-specific improvement goals
  3. Automate one manual deployment step

Dashboard Example

Executive View

┌─────────────────────────────────────┐
│ Deployment Frequency: 4.2 per day  │
│ ████████████████░░░░░░░░ Elite      │
│                                     │
│ This Week: 29 deployments           │
│ Last Week: 27 deployments (+7%)    │
└─────────────────────────────────────┘

Team View

Team           This Week  Last Week  Trend
────────────────────────────────────────
Frontend       15         12         ↑ 25%
Backend        8          10         ↓ 20%
Mobile         6          5          ↑ 20%
────────────────────────────────────────
Total          29         27         ↑ 7%

Track these metrics alongside Deployment Frequency for a complete picture:

  • Lead Time for Changes: How long from commit to production?
  • Change Failure Rate: What percentage of deployments fail?
  • Mean Time to Recovery (MTTR): How quickly can you recover from failures?
  • Sprint Velocity: Is increased deployment frequency improving throughput?

Tools & Integrations

Native Support

  • GitHub Actions: Track workflow runs
  • GitLab CI: Built-in deployment frequency metrics
  • CircleCI: Insights dashboard
  • AWS CodeDeploy: Deployment history

Third-Party Tools

  • Sleuth: DORA metrics tracking
  • LinearB: Engineering metrics platform
  • Haystack: Engineering analytics
  • Jellyfish: Engineering management platform

DIY Approach

# Example: Count GitHub deployments
gh api repos/:owner/:repo/deployments \
  --jq '.[] | select(.environment=="production") | .created_at' \
  | wc -l

Questions to Ask

For Leadership

  • Are we deploying fast enough to stay competitive?
  • Which teams are struggling to deploy frequently?
  • Do we have the automation infrastructure we need?

For Teams

  • What's blocking us from deploying more often?
  • What's the riskiest part of our deployment process?
  • If we could automate one thing, what would it be?

For Individuals

  • How confident am I clicking the deploy button?
  • What would make me more comfortable deploying?
  • Do I understand how to rollback a bad deploy?

Success Stories

Startup Example: Team went from weekly deploys to 10+ per day

  • Before: Manual QA, Friday-only deploys, 2-hour process
  • After: Automated testing, any-day deploys, 10-minute process
  • Impact: 50% reduction in bug resolution time, 3x feature velocity

Enterprise Example: Large company moved from quarterly to weekly

  • Before: Quarterly releases, massive change sets, high failure rate
  • After: Weekly releases, smaller changes, predictable process
  • Impact: 80% reduction in change failure rate, improved team morale

Conclusion

Deployment Frequency is a foundational metric for high-performing engineering organizations. Start tracking it today, establish your baseline, and incrementally improve through automation, cultural changes, and technical investments. Remember: the goal isn't just to deploy more often—it's to deliver value to customers faster and more reliably.