UTM uses the popular QEMU system emulator securely in a sandboxed environment to protect your data from viruses and malware in the emulated operating system.

Run Windows® 10 for ARM or Ubuntu® for ARM fully virtualized for maximum performance. Run Windows® 7 or any older Intel/AMD system emulated with decent performance.

Designed for macOS Big Sur using the latest and greatest Apple technologies, UTM is built from the ground up with the Mac in mind.


- Run ARM64 operating systems such as Windows® for ARM and Ubuntu® ARM on your Apple Silicon Mac fully virtualized at near native speeds (*virtualization only available for Apple Silicon Macs)
- Run Intel/AMD operating system such as Windows® 7, Windows® XP, Ubuntu® Linux, and more on your Apple Silicon Mac (*emulated with limited performance on Apple Silicon Macs, fully virtualized on Intel Macs)
- Over 30 processors can be emulated by the QEMU backend including i386, x64, ARM32, ARM64, MIPS, PPC, and RISC-V for developers and enthusiasts
- Supports macOS Sandbox to protect your data from any viruses or malware infecting the emulated operating system (such as Windows®)
- Attach USB devices to your virtual machine
- Experimental: GPU accelerated OpenGL on Linux VMs
- Bridged and shared networking support
- Don't know how to use QEMU? Confused at all the options QEMU provides? UTM provides an easy to understand UI for managing and configuring VMs that does not require knowledge of QEMU command line arguments

Current Limitations:

We are working hard to provide new features. Below are some things currently missing from UTM. We hope to support at least some of these features in the future.

- No direct mounting of external disks and drives, only mounting disk images is supported
- No drag & drop of files and data, only copy paste of text is supported with tools installed

What’s New

Version 2.4.1

## Notes
**Note that some changes require updates to your VM configuration so please read this part carefully.**

* Cursor disappearing on Windows 10/11 has been fixed with an updated VirtIO GPU driver. Additionally, dynamic resolution (auto-change resolution when VM window is resized) and more fixed resolutions (matching all the screen resolutions of the latest Mac computers) were added to the driver. This requires you to download the latest SPICE tools ISO from and run the installer again (or manually updating your GPU driver from the ISO if you know how).
* In v2.4.0, newly created Q35 and PC machine (x86 and x86_64) defaulted to the `Skylake-Client` CPU model. Subsequently, it was discovered that the change caused performance regressions. v2.4.1 reverted the default CPU model to `Default` but if you created a new Q35/PC VM in v2.4.0, it is recommended that you manually change the CPU in System settings to `Default`.
* Since v1.0.0, UTM used the RTL8139 network card as the default for Q35 VMs (x86 and x86_64) and Virt VMs (ARM64). There is a bug in the device implementation that causes the Windows driver to freeze the system and many users reported Windows Installer freezing as well as random freezes through normal use. In v2.4.0, we changed the default network card for Virt machines to `virtio-net-pci` and in v2.4.1, we changed the default network card for Q35 machines to E1000. However, this change only applies to newly created VMs, and any existing VMs may still suffer from the random freeze issues. It is recommended that you change your network card to `e1000` for Q35 machines and `virtio-net-pci` for Virt machines. Windows 7 and above should have the Intel E1000 network card drivers already installed, but the VirtIO Network card requires drivers in the SPICE tools ISO from (if you previously installed this, you should have the drivers already on your system).
* Since v2.1.2, UTM provided an option (Cmd+,) to "Use only performance cores by default" which defaulted to off. When on, any VM which does not have a manually configured CPU count (> 0) will set the CPU count to the number of performance cores on the system. In v2.4.1, we have made this option on by default which means if you previously have not modified this option, then it will now be on. If you turned the option on, it should not change and if you turned the option on and later off again, it should still be off. The reason for this change was because users may not be aware of this option which can result in degraded performance when left off and we believe the default should reflect the best possible performance. Note that as before, if you manually set a VM's CPU count > 0, then this option does not change anything.

## Changes
* Improved zh-Hans translation (thanks @js-john)
* Fixed inverted mouse cursor colour in Windows
* New VMs will only use PCores by default (unless manually overridden with Preferences or per-VM config), this also fixes #3180
* Changed default Q35 audio card to intel-hda
* Changed default Q35 network card to E1000 and Virt network card to virtio-net (#3130)
* Removed default CPU for Q35 and PC configurations because the Skylake-Client CPU resulted in performance regression (#3249)
* Fixed downloadVM URL action when the ZIP name collides with the .utm name (thanks @conath)
* Fixed a race condition leading to crash when a VM is shut down suddenly

Ratings and Reviews

3.1 out of 5
19 Ratings

19 Ratings

Scott in Bmore ,

Zero for two

I tried the Ubuntu 14 x86 VM in the UTM gallery and got a "parse error". Then I tried manually doing an Ubuntu 18 VM from the iso .. it started OK but at some point the ubuntu logo appeared backwards and upside down, and it never got beyond that.

Five stars for trying, 0 stars for functionality.

JDMTV001 ,

Good, room for improvment

I initially triad the free option. I installed Win 10 on MAC M1 and works well so far. The bad reviews with the BSOD are because people are not reading the instructions and the guide. You do get the BSOD if you are trying to install directly VHDX and is stated very clear why. Hopefully this will be fixed with updates. In the meantime if you convert the ISO to QCOW2 using the terminal or a free software that you can find online, you can isntall Win 10 and no BSOD. The only issue I am having and I will look on their support page to see if there is a solution, the mouse when using the trakpad on Mac Air M1, is dissapering for 1 to 3 seconds maybe longer at times. Depends on how it moves and in between menius. MIght be a grafic drive issue, I am not sure. I tried all the other graphic drives and only the deafult one is working. I don't see why some updates cannot resolve this issue. I can go with higgher resolution but scalling is not working properly and I msut use it in full screen if I want a higher resolutin. If you have an extern monitor that will probably not be the case, however a better scalling will be great. I ended up buying the software from the app store. For now, for my needs it's ok, I hope it will get better in time.

jteloh ,

for what it does

This tracks an open source interface to a very complex program : qemu which is also open src, Qemu does alot more than just emulate OS versions it also allows you to emulate just about every arch in the last 20 years. What this means is that an m1 can run i386, sparc, ppc etc. This program takes some work to learn but I have gotten many OS to run with different architecture's. If you want to learn about sys arch this for you. If you want a canned experience, buy P* or V*

App Privacy

The developer, Yuan Lu, indicated that the app’s privacy practices may include handling of data as described below. For more information, see the developer’s privacy policy.

Data Not Collected

The developer does not collect any data from this app.

Privacy practices may vary, for example, based on the features you use or your age. Learn More


  • Family Sharing

    With Family Sharing set up, up to six family members can use this app.

More By This Developer