Stack Trace Parser & Formatter

Paste any stack trace to parse, format, and analyze it instantly.

About This Tool

The Stack Trace Parser is a free browser-based tool that helps developers quickly parse, format, and analyze stack traces from multiple programming languages. Whether you are debugging a JavaScript TypeError, a Python Traceback, a Java NullPointerException, a Go panic, a Ruby error, a C# exception, or a Rust panic, this tool auto-detects the language and breaks down each frame into structured components.

Stack traces are the primary debugging artifact when something goes wrong in production or development. However, raw stack traces can be difficult to read, especially when they include dozens of internal runtime frames, third-party library frames, or deeply nested call chains. This tool highlights the frames that matter most by identifying and allowing you to collapse internal and node_modules frames.

All processing happens entirely in your browser. Your stack trace data never leaves your machine --- there are no server round-trips, no logging, and no third-party analytics on your input. This makes it safe for production error logs that may contain sensitive file paths, function names, or infrastructure details.

The parser extracts key information from each frame: the function or method name, file path, line number, and column number where available. You can click on any file:line reference to copy it to your clipboard, making it easy to jump directly to the relevant code in your editor. The reverse option lets you flip the stack order, which is useful when comparing traces from languages that use different conventions (Python shows most-recent-last, while JavaScript shows most-recent-first).

For related debugging workflows, try the Diff Viewer to compare two stack traces side by side, the Log Format Parser to parse structured server logs, or the Regex Tester to build patterns for extracting information from custom log formats.

How to Use

  1. Paste your stack trace into the input textarea at the top of the page.
  2. The tool auto-detects the programming language (JavaScript, Python, Java, Go, Ruby, C#, or Rust) and displays a language badge.
  3. The error message is extracted and displayed in a highlighted box at the top of the output.
  4. Each stack frame is parsed into function name, file path, line number, and column number, displayed in an interactive list.
  5. Click on any file:line reference to copy the path to your clipboard for quick navigation in your editor.
  6. Use Hide Internal and Hide node_modules buttons to collapse framework and library frames, focusing on your application code.
  7. Toggle Reverse to flip the stack trace order.
  8. Use the keyboard shortcut Ctrl+Shift+C to copy the full parsed output to your clipboard.

Popular Stack Trace Examples

View all stack trace examples →

FAQ

Is my data safe when using this tool?

Yes. All stack trace parsing is performed client-side in your browser using JavaScript. No data is transmitted to any server. You can safely use this tool with production error logs that contain file paths, function names, or other sensitive information.

Which programming languages are supported?

The parser supports stack traces from JavaScript (including TypeScript and Node.js), Python, Java (including Kotlin), Go, Ruby, C#/.NET, and Rust. The language is auto-detected based on the format of the stack trace.

What does the Reverse button do?

The Reverse button flips the order of the stack frames. This is useful because different languages display stack traces in different orders: JavaScript shows the most recent call first, while Python shows the most recent call last. Reversing lets you read the trace in whichever direction you prefer.

What are internal frames?

Internal frames are stack frames from the language runtime, standard library, or framework internals. For example, in Node.js these are frames from node:internal/* or react-dom internals. In Python, these are frames from site-packages or the Python standard library. Hiding them lets you focus on your own application code.

Can I parse minified stack traces?

The tool can parse minified stack traces that maintain the standard format (e.g., 'at func (file:line:col)'). However, if the function names and file paths are mangled by a bundler, the parsed output will show the mangled names. For fully readable output, you would need to apply source maps before pasting.

How do I copy a specific file path?

Click on any file:line reference displayed below the function name in each frame. The path is copied to your clipboard. A 'Copied!' confirmation appears briefly to confirm the action.

Does the tool handle multi-line error messages?

Yes. The parser extracts multi-line error messages that appear before the first stack frame. The full error message is displayed in the highlighted error box at the top of the output section.

Related Tools