Sre Toil Measurement

Production engineering guide for sre toil measurement covering patterns, implementation strategies, and operational best practices.

This page describes how to measure and track toil in software engineering operations, specifically focusing on quantifying the effort spent on manual, repetitive, or non-value-adding work. Toil measurement matters when establishing operational maturity, identifying automation opportunities, or benchmarking engineering team performance.

What to Measure

Toil is work that directly supports system reliability but does not add customer-facing value. Examples include responding to alerts, debugging production issues, performing routine maintenance, and implementing workarounds. The goal is to quantify how much time engineers spend on these activities relative to value-generating work.

Measurement requires tracking both the volume of toil tasks and their duration. Use a structured approach where each toil activity is logged with start/end timestamps, task description, and associated system components. This data enables calculating toil percentage as:

Toil Percentage = (Total Toil Time / Total Work Time) × 100

How to Record Toil

Use a simple time-tracking mechanism for recording toil activities. Create a structured log format with these fields: timestamp, activity description, duration, affected system, and team member.

Example log entry:

2023-04-15T09:30:00Z - Investigating high CPU on API server
2023-04-15T10:15:00Z - Duration: 45 minutes
System: user-service
Engineer: jsmith

This can be stored in a flat-file database, CSV file, or simple JSON log. The key is consistency in format and regular updates.

Tracking Through Incident Reports

Link toil activities directly to incident reports. Each incident should include a toil classification field that indicates whether the work was primarily operational (toil) or value-added (engineering).

For example, an incident report might show:

This classification helps distinguish between planned maintenance and unplanned reactive work.

Measuring Through Time Allocation

Track toil by allocating time slots to different types of activities. Use a time-tracking tool that allows categorizing entries by type. Examples include:

Regularly audit these allocations to ensure they reflect actual work patterns.

Automation Opportunity Identification

Toil measurement helps identify automation candidates. Look for recurring activities that consume significant time. For example, if backup scripts require manual intervention 10 times per month, this represents a potential automation opportunity.

Use historical toil data to prioritize automation efforts. The most frequent or time-consuming tasks should be automated first.

Calculating Toil Metrics

To calculate toil metrics, collect data over at least one full work cycle (typically one week). Each toil entry should include:

Aggregate this data to produce:

Using Configuration Management Tools

Track changes to system configurations as part of toil measurement. Each configuration change that requires manual intervention counts as toil. Log these with the same structure used for other toil activities.

For example, if a database parameter change requires SSH access and restart:

Monitoring Through Service Level Indicators

Toil can be measured through service level indicators (SLIs). A common SLI is the frequency of manual interventions required to maintain system health.

Example SLI:

Manual Interventions Per Week = Total Manual Actions / Number of Engineers

This metric can be tracked in monitoring systems that log operational events.

Tracking Through Change Management

Each change that requires manual approval or execution counts as toil. Track these changes separately from automated deployments.

Example tracking fields:

Reporting Toil Data

Present toil data in a standardized format. Create regular reports that show:

Reports should be shared with engineering managers and technical leads.

Identifying Toil Patterns

Look for patterns in toil activities to identify root causes. For example, if most toil occurs during specific times of day or involves certain systems, this suggests underlying problems.

Example pattern:

Peak Toil: 10am-2pm daily
Primary Systems: user-service, payment-api

Measuring Through Deployment Frequency

Track how often engineers must manually intervene in deployments. High deployment frequency with low automation often correlates with high toil.

Use deployment logs to identify manual steps that could be automated:

Tracking Through Alert Fatigue

Measure alert-related toil by logging the number and duration of alert responses. This includes:

Establishing Baseline Measurements

Set up baseline measurements before implementing automation efforts. Track toil for at least one month to establish a baseline.

Example baseline report:

Baseline Period: March 1-31, 2023
Average Toil Hours/Engineer: 24.5
Total Toil Hours: 147
Toil Percentage: 32%

Calculating Improvement Metrics

After implementing toil reduction measures, calculate improvements using the same metrics:

Measuring Through System Observability

Use system observability tools to identify toil sources. Monitor logs, metrics, and traces to find recurring issues that cause manual intervention.

Example observability data points:

Tracking Through Retrospectives

Include toil measurement in post-mortem processes. Document how much time was spent on reactive work versus proactive improvements.

Each retrospective should include:

Measuring Through Team Velocity

Track how toil affects team velocity. High toil often correlates with reduced capacity for new feature development.

Example measurement:

Velocity = (Total Story Points Completed) / (Total Engineer Hours)
Toil Adjustment: Subtract toil hours from total available time

Using Incident Response Time

Measure the time between incident detection and resolution. Longer response times often indicate more toil in the process.

Track these metrics:

Identifying Toil Through System Complexity

Complex systems typically generate more toil. Track system complexity indicators:

Monitoring Through Operational Burden

Operational burden represents accumulated toil across all systems. Monitor this through:

Measuring Through Feedback Loops

Establish feedback loops where team members report toil experiences. This can be done through surveys, regular check-ins, or structured reporting.

Example feedback form:

1. What manual tasks take the most time?
2. Which systems require the most intervention?
3. What automation would reduce toil?
4. How often do you spend time on reactive work?

Tracking Through Resource Allocation

Monitor how toil affects resource allocation decisions. High toil may indicate need for additional engineers or automation tools.

Example tracking:

Reporting Through Dashboards

Create dashboards that visualize toil metrics. These should include:

Example dashboard components:

- Weekly toil hours per engineer
- Toil distribution by system
- Toil trend line (last 12 weeks)
- Target vs. actual toil percentage

Measuring Through Engineering Productivity

Link toil measurement to overall engineering productivity. Track how toil reduction impacts:

Calculating Return on Toil Reduction

Measure the value of toil reduction efforts. Calculate:

Example calculation:

Time Saved = 2 hours × 10 incidents = 20 hours
Value = 20 hours × $100/hour = $2,000

Tracking Through Continuous Improvement

Integrate toil measurement into continuous improvement processes. Regularly review and update toil definitions and measurement methods.

Example improvement cycle:

  1. Measure current toil levels
  2. Identify top toil sources
  3. Implement automation or process improvements
  4. Re-measure to verify improvements
  5. Repeat

Addressing Measurement Limitations

Recognize that toil measurement has limitations. Some manual work cannot be easily quantified, and human judgment affects classification accuracy.

Example limitation:

Handling Data Quality Issues

Ensure data quality through regular audits and validation processes. Check for:

Example audit process:

1. Review 10% of logged entries
2. Verify accuracy with team members
3. Correct errors
4. Update measurement procedures if needed

This page was rewritten on 16 October 2026. It replaced a templated version that was not specific to its own title. How these pages are written and checked. If anything here is wrong, tell us at [email protected] and we will correct it.