User State Migration Tool

{{Infobox software

| name = User State Migration Tool (USMT)

| logo =

| screenshot =

| screenshot size =

| caption =

| developer = Microsoft

| released =

| latest release version = 5.0

| latest release date =

| operating system = Microsoft Windows

| genre = Command

| license = Proprietary commercial software

| website = {{URL|https://docs.microsoft.com/en-us/windows/deployment/usmt/usmt-technical-reference}}

}}

The User State Migration Tool (USMT) is a command line utility program developed by Microsoft that allows users comfortable with scripting languages to transfer files and settings between Windows PCs. This task is also performed by Windows Easy Transfer, which was designed for general users but then discontinued with the release of Windows 10,{{cite web|url=https://social.technet.microsoft.com/wiki/contents/articles/32980.how-to-migrate-windows-user-profile-to-new-account-new-pc-or-new-domain.aspx|title=How to Migrate Windows User Profile to New Account, New Pc, or New Domain|first=Thomas|last=Ehler|date=December 24, 2015|access-date=December 22, 2018|work=TechNet|publisher=Microsoft}} where they instead partnered with Laplink.{{cite web|url=https://docs.microsoft.com/en-us/windows/deployment/usmt/usmt-overview#limitations|title=User State Migration Tool (USMT) Overview|date=October 15, 2017|publisher=Microsoft|access-date=December 22, 2018|quote=USMT is intended for administrators who are performing large-scale automated deployments. If you are only migrating the user states of a few computers, you can use PCmover Express. PCmover Express is a tool created by Microsoft's partner, Laplink.}} Starting with Windows 8, many settings and data are now being synchronized in cloud services via a Microsoft Account and OneDrive. USMT allows a high-volume, automated deployment of files and settings,{{cite book|url=https://archive.org/details/windowsvistatmre00mitc|title=Windows Vista™ Resource Kit|date=2007 |publisher=Microsoft Press|isbn=978-0-7356-2283-8|url-access=registration}} and is also useful in migrating user settings and files during OS upgrades. Because USMT has high complexity and a command line interface, there have been several attempts to provide access to its useful functionality by creating GUI wrappers for it. 32-bit to 64-bit migrations are supported, but 64-bit to 32-bit are not.

USMT 4 is included in the Windows Automated Installation Kit. USMT 5 is included in the Windows Assessment and Deployment Kit (ADK).{{cite web|url=https://docs.microsoft.com/en-us/previous-versions/windows/hh825256(v=win.10)|title=User State Migration Tool (USMT) Technical Reference|date=March 5, 2014|publisher=Microsoft}} Versions of the USMT are included in the Windows ADKs for Windows 10, versions 1511 and 1607.{{cite web | title=User State Migration Tool (USMT) Technical Reference (Windows 10) - Windows Deployment | website=Microsoft Learn | date=28 February 2023 | url=https://learn.microsoft.com/en-us/windows/deployment/usmt/usmt-technical-reference | access-date=12 October 2023}}

Overview

USMT consists of two separate programs. Scanstate.exe scans the source PC for the data and settings and stores it in a {{Not a typo|.MIG}} file. Loadstate migrates the data and settings from the {{Not a typo|.MIG}} file onto the target PC.

What to transfer is specified as commandline switches in the configuration XML files migapp.xml, migsys.xml, miguser.xml and other optional Config.xml files. Which Users (and their data) to transfer is controlled by other switches.

An example of a "load data on to PC" command could look like this (in one line – newlines and indents added here for readability):

loadstate "Y:\temp\Migrationstorage\WS_toolshop1"

/i:"Y:\temp\Migrationstorage\WS_toolshop1\migapp.xml"

"Y:\temp\Migrationstorage\WS_toolshop1\migsys.xml"

/i:"Y:\temp\Migrationstorage\WS_toolshop1\miguser.xml"

/ue:*\* /ui:gutte /ui:Lotta /lac /lae

/progress:"C:\Documents and Settings\Administrator\Local Settings\Temp\USMTprog.log"

/l:"C:\Documents and Settings\Administrator\Local Settings\Temp\USMTscan.log"..

/c

The "Scanstate" command is similar in complexity. Both commands require strict adherence to syntax.

Supported OSes

{{update|Windows 11 support|date=April 2025}}

class="wikitable"

|+Source operating systems

Version98NT 4.02000{{efn|name=w2k|Versions that cover Windows 2000 only cover the Professional edition}}XPVista788.110Cite
2{{efn|name=32bit|This version supports 32-bit operating systems only}}{{yes}}{{yes}}{{yes}}{{yes}}{{no}}{{no}}{{no}}{{no}}{{no}}
3{{no}}{{no}}{{yes}}{{yes}}{{yes}}{{no}}{{no}}{{no}}{{no}}

| {{cite web|url=https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-vista/cc721840(v%3dws.10)#supported-operating-systems|title=Requirements|date=July 24, 2008|publisher=Microsoft|access-date=December 22, 2018}}

4{{no}}{{no}}{{no}}{{yes}}{{efn|name=sp3|Service Pack 3 only}}{{yes}}{{efn|name=sp1|Service Pack 1 only}}{{yes}}{{no}}{{no}}{{no}}
5{{no}}{{no}}{{no}}{{yes}}{{yes}}{{yes}}{{yes}}{{no}}{{no}}

| {{cite web|url=https://docs.microsoft.com/en-us/previous-versions/windows/hh824913%28v%3dwin.10%29#supported-operating-systems|title=USMT Requirements|date=November 7, 2013|publisher=Microsoft|access-date=December 22, 2018}}

6.1{{no}}{{no}}{{no}}{{no}}{{no}}{{yes}}{{yes}}{{yes}}{{no}}

| {{cite web|url=https://techcommunity.microsoft.com/t5/configuration-manager-archive/how-to-migrate-user-data-from-windows-xp-to-windows-8-1-with/ba-p/273329|title=How to migrate user data from Windows XP to Windows 8.1 with System Center 2012 R2 Configuration Manager|date=October 16, 2018|publisher=Microsoft|access-date=February 9, 2021}}

10{{no}}{{no}}{{no}}{{no}}{{no}}{{yes}}{{yes}}{{yes}}{{yes}}

| {{cite web|url=https://docs.microsoft.com/en-us/windows/deployment/usmt/usmt-requirements#a-href-idbkmk-1asupported-operating-systems|title=USMT Requirements|publisher=Microsoft|date=May 2, 2017|access-date=December 22, 2017}}

class="wikitable"

|+Destination operating systems

Version2000{{efn|name=w2k}}XPVista788.110Cite
2{{efn|name=32bit}}{{yes}}{{yes}}{{no}}{{no}}{{no}}{{no}}{{no}}
3{{no}}{{yes}}{{yes}}{{no}}{{no}}{{no}}{{no}}

|

4{{no}}{{no}}{{yes}}{{yes}}{{no}}{{no}}{{no}}
5{{no}}{{no}}{{yes}}{{yes}}{{yes}}{{no}}{{no}}

|

6.1{{no}}{{no}}{{no}}{{yes}}{{yes}}{{yes}}{{no}}

|

10{{no}}{{no}}{{no}}{{yes}}{{yes}}{{yes}}{{yes}}

|

{{notelist}}

What USMT transfers

{{prose|date=December 2018|section}}

USMT transfersmore details on [https://docs.microsoft.com/en-us/windows/deployment/usmt/usmt-overview Microsoft Docs]

  • Selected User Accounts
  • Files and folders
  • E-mail messages, settings, and contacts
  • Photos, music, and videos
  • Windows settings
  • Program data files and settings
  • Internet settings

GUI wrappers for USMT

Because of the complexity of USMT command-line input, there have been third-party attempts to create GUI front-ends for it. These include (but are not limited to):

  • [https://web.archive.org/web/20140527181411/http://dcunningham.net/applications/workstation-migration-assistant/ Workstation Migration Assistant] (open-source with source code posted on [http://github.com/sintaxasn/MigAssistant GitHub])
  • Super Grate (focus on remote migration: open-source with source code posted on [https://github.com/belowaverage-org/SuperGrate GitHub])
  • [https://web.archive.org/web/20111018021531/http://webpages.csus.edu/~dung.truong/MUST/ M.U.S.T. - Move User's Stuff Tool] (free USMT GUI that encapsulates most features of USMT4 plus more)
  • [http://www.wintools.com.au USMT XML Builder] (focus on editing USMT XML template files)
  • [https://ehlertech.com/ USMTGUI] (Use advanced USMT features - simply. A "one window GUI" for USMT.)

Both Workstation Migration Assistant and USMT XML Builder are out of date but there are up to date commercial GUI's for USMT.

References

{{Reflist}}