How Flame Charts Represent JavaScript Execution

A flame chart is a performance visualization tool that plots JavaScript runtime metrics along two dimensions: time and call stack depth. It enables developers to analyze how long individual functions take to run, how functions invoke one another, and where performance bottlenecks occur during the execution lifecycle. By visually mapping function calls as colored blocks across a chronological timeline, the chart provides an intuitive representation of both execution duration and call hierarchy.

The Horizontal Axis: Time and Execution Duration

The horizontal axis (X-axis) in a flame chart represents chronological time, moving from left to right. Each block along this axis represents a specific function execution:

The Vertical Axis: Call Hierarchies and Stack Depth

The vertical axis (Y-axis) represents the call stack at any given millisecond during profiling.

Identifying Performance Bottlenecks

Flame charts make it easy to spot common performance issues by turning raw timing data into distinct geometric patterns: