Performance Issue Report Template
An issue template for reporting performance problems with fields for metrics (response time, memory, CPU), profiling data, load conditions, and expected baselines.
Detailed Explanation
Performance Issue Report Template
Performance issues are notoriously hard to reproduce and diagnose. A structured template ensures reporters include the quantitative data and environmental context needed for investigation.
Template Structure
name: "Performance Issue"
description: "Report a performance problem"
title: "[Perf]: "
labels: ["performance", "bug"]
body:
- type: dropdown
id: perf_type
attributes:
label: "Performance Issue Type"
options:
- "Slow response time"
- "High memory usage"
- "High CPU usage"
- "Slow page load"
- "Database query performance"
- "Memory leak"
- "Network latency"
validations:
required: true
- type: textarea
id: metrics
attributes:
label: "Performance Metrics"
description: "Include specific numbers: response time, memory usage, CPU %, etc."
placeholder: |
- Response time: 8.5s (expected < 200ms)
- Memory usage: 2.1GB (expected < 500MB)
- CPU: 95% on single core
validations:
required: true
- type: textarea
id: conditions
attributes:
label: "Load Conditions"
description: "Under what conditions does the performance issue occur?"
placeholder: |
- Number of concurrent users: ~500
- Dataset size: 10,000 records
- Frequency: Every request after 30 min uptime
validations:
required: true
- type: textarea
id: profiling
attributes:
label: "Profiling Data"
description: "Attach flame graphs, heap dumps, or profiler output if available"
validations:
required: false
- type: input
id: baseline
attributes:
label: "Expected Baseline"
description: "What performance level do you expect?"
placeholder: "< 200ms response time, < 500MB memory"
validations:
required: true
Why Metrics Matter
"It's slow" is not actionable. Requiring specific metrics forces reporters to measure the problem, which often reveals whether it is a real issue or a perception problem. The expected baseline field establishes a target for resolution.
Load Conditions
Performance problems are often load-dependent. The conditions field captures the scale at which the issue manifests, helping developers set up appropriate test environments.
Profiling Data
While optional, profiling data dramatically speeds up diagnosis. Include a markdown section explaining how to generate common profiling output (browser DevTools Performance tab, pprof output, database EXPLAIN ANALYZE results).
Use Case
Backend services, web applications, and libraries where performance regressions can impact user experience or infrastructure costs, requiring systematic measurement and diagnosis.