UTM icon

UTM

Run Windows, Linux, macOS, and classic operating systems in virtual machines on your Mac.

UTM is a free, open-source virtual machine app for running Windows, Linux, macOS, and older operating systems on a Mac. Built on QEMU and Apple's virtualization frameworks, it supports both hardware-assisted virtualization and emulation of different processor architectures.

Run modern and classic operating systems

  • Windows and Linux: Run ARM64 systems with hardware acceleration on Apple Silicon, or compatible x86 systems on Intel Macs. UTM can also emulate x86 systems on Apple Silicon, though they run more slowly.
  • macOS virtual machines: Install additional macOS environments on Apple Silicon Macs running macOS 12 or later.
  • Classic computers: Emulate older x86, PowerPC, MIPS, and other processor architectures to explore legacy operating systems or software.
  • VM controls: Configure memory, storage, networking, shared folders, and USB devices. Support for individual features varies by guest system and virtualization backend.

Useful tools for testing and experimentation

UTM provides a graphical interface for creating and managing virtual machines without writing QEMU commands. It also supports automation through AppleScript and the utmctl command-line tool. UTM 5 adds snapshots for supported virtual machines, allowing users to save and restore VM states.

Virtualization is generally faster when the guest operating system matches the Mac's processor architecture. Emulation supports other architectures at a performance cost. UTM 5 introduces experimental DirectX graphics acceleration for Windows 11 and Vulkan support for Linux, but Windows gaming compatibility remains limited.

Availability and compatibility

The full application is free from GitHub. An optional paid Mac App Store version offers the same functionality with automatic updates and supports development. UTM 5 requires macOS 12 or later and supports Apple Silicon and Intel Macs; UTM 4.7.x is available for older macOS 11 systems.