This page describes how to download the Dart SDK. The Dart SDK has the libraries and command-line tools that you need to develop Dart command-line, server, and non-Flutter web apps. For details, see the Dart SDK overview.

Installing the Dart SDK

As the following instructions show, you can use a package manager to easily install and update a stable channel Dart SDK. Alternatively, you can build the SDK from source, grab a Dart Docker image, or install from any release channel by downloading the SDK as a zip file.

Note: The Flutter SDK includes the full Dart SDK, and has Dart’s dart command-line interface in its bin folder.

You can install the Dart SDK using Chocolatey.

To install the Dart SDK:

C:\> choco install dart-sdk

To upgrade the Dart SDK:

C:\> choco upgrade dart-sdk

By default, the SDK is installed at C:\tools\dart-sdk. You can change that location by setting the ChocolateyToolsLocation environment variable to your chosen installation directory.

If you can’t use the Dart SDK executables, add the SDK location to your PATH:

  1. In the Windows search box, type env.
  2. Click Edit the system environment variables.
  3. Click Environment Variables….
  4. In the user variable section, select Path and click Edit….
  5. Click New, and enter the path to the dart-sdk directory.
  6. In each window that you just opened, click Apply or OK to dismiss it and apply the path change.

If you’re using Debian/Ubuntu on AMD64 (64-bit Intel), you can choose one of the following options, both of which can update the SDK automatically when new versions are released.

Install using apt-get

Perform the following one-time setup:

$ sudo apt-get update
$ sudo apt-get install apt-transport-https
$ wget -qO- | sudo gpg --dearmor -o /usr/share/keyrings/dart.gpg
$ echo 'deb [signed-by=/usr/share/keyrings/dart.gpg arch=amd64] stable main' | sudo tee /etc/apt/sources.list.d/dart_stable.list

Then install the Dart SDK:

$ sudo apt-get update
$ sudo apt-get install dart

Install a Debian package

Alternatively, download Dart SDK as a Debian package in the .deb package format.

Modify PATH for access to all Dart binaries

After installing the SDK, add its bin directory to your PATH. For example, use the following command to change PATH in your active terminal session:

$ export PATH="$PATH:/usr/lib/dart/bin"

To change the PATH for future terminal sessions, use a command like this:

$ echo 'export PATH="$PATH:/usr/lib/dart/bin"' >> ~/.profile

Install Homebrew, and then run the following commands:

$ brew tap dart-lang/dart
$ brew install dart

To upgrade when a new release of Dart is available:

$ brew upgrade dart

To switch between locally installed Dart releases, first install the version you want to switch to if you haven’t. For example, to install Dart 2.12:

$ brew install dart@2.12

Then to switch between versions, unlink the current version and link the desired version.

$ brew unlink dart@<old> && brew unlink dart@<new> && brew link dart@<new>

To see which versions of Dart you’ve installed:

$ brew info dart

System requirements

The Dart SDK is supported on Windows, Linux, and macOS.


  • Supported versions: Windows 10 and 11.
  • Supported architectures: x64, IA32, ARM64.
    Support for ARM64 is in preview, and is available only in the dev and beta channels.


  • Supported versions: Debian stable and Ubuntu LTS under standard support.
  • Supported architectures: x64, IA32, ARM64, ARM, RISC-V (RV64GC).
    Support for RISC-V is in preview, and is available only in the dev and beta channels.


  • Supported versions: Latest three major versions. Dart supports the following macOS versions as of November 2023:
    • macOS 12 (Monterey)
    • macOS 13 (Ventura)
    • macOS 14 (Sonoma)
  • Supported architectures: x64, ARM64.

About release channels and version strings

The Dart SDK has three release channels:

  • Stable channel: stable releases, updated roughly every three months; currently [calculating].

    Stable releases are suitable for production use.

  • Beta channel: preview releases, usually updated every month; currently [calculating].

    Beta channel builds are preview builds for the stable channel. We recommend testing, but not releasing, your apps against beta to preview new features or test compatibility with future releases.

  • Dev channel: prereleases, usually updated twice a week; currently [calculating].

    Dev channel releases are the most current with latest changes, may be broken, are unsupported, and may contain unvetted breaking changes.

Stable channel releases of the Dart SDK have x.y.z version strings like 1.24.3 and 2.1.0. They consist of dot-separated integers, with no hyphens or letters, where x is the major version, y is the minor version, and z is the patch version.

Beta and dev channel releases of the Dart SDK (non-stable releases) have x.y.z-a.b.<beta|dev> versions like 2.8.0-20.11.beta. The part before the hyphen follows the stable version scheme, a and b after the hyphen are the prerelease and prerelease patch versions, and beta or dev is the channel.

You can get stable channel releases using the instructions above, or you can get stable, beta, or dev channel releases using a package manager or Dart Docker image, or by downloading the SDK as a zip file.