Dart DevTools is a suite of debugging and performance tools for Dart and Flutter. These tools are distributed as part of the dart tool and interact with tools such as IDEs, dart run, and webdev.

Screenshot of DevTools' Memory page

The following table shows which tools you can use with common Dart app types.

ToolFlutter mobile or desktopFlutter webOther webCommand-line
Logging viewdonedonedonedone
App size tooldonedone
CPU profilerdonedone
Memory viewdonedone
Network viewdonedone
Performance viewdonedone
Flutter inspectordonedone

For information about using Dart DevTools with each app type (for example, command-line apps), click the app type in the top row. For details about individual tools (for example, the debugger), click the tool name in the left column.

As the table shows, the debugger and the logging view are the only parts of Dart DevTools that are available to all app types. Web apps can't use the timeline, memory, and performance views; instead, they can use browser tools such as the Chrome DevTools. The Flutter inspector works only for Flutter apps; other web apps should use browser tools such as the Chrome DevTools.

Using DevTools with a command-line app


You can use DevTools to perform source-level debugging or to view general log and diagnostics information for a running command-line app.

1. Start the target app


Use the dart run --observe command to execute the main file for the Dart command-line app that you want to debug or observe. Optionally add --pause-isolates-on-start, which automatically breaks execution at the start of the script.

$ cd path/to/dart/app
$ dart run --pause-isolates-on-start --observe main.dart

The Dart VM service is listening on
The Dart DevTools debugger and profiler is available at:

Note the Dart DevTools debugger and profiler URL. You'll need it in the next step.

2. Open DevTools and connect to the target app


Copy the Dart DevTools debugger and profiler URL, and paste it into the address bar of a Chrome browser window.

When you visit that URL in Chrome, the Dart DevTools UI appears, displaying information about the target app. Click Debugger to start debugging the app.

Using DevTools with a Flutter app


For details on using DevTools with a Flutter app for any platform (including web) see the DevTools documentation on

Using DevTools with a non-Flutter web app


To launch a web app so that you can use Dart DevTools, use the webdev serve command with the --debug or --debug-extension flag:

$ webdev serve --debug

For more information, see Debugging Dart web apps.