When moving to a new computer, it can be tempting to reinstall every program from the old one. But that often means bringing along software you no longer use, trial programs, outdated utilities, and applications you installed for one specific task years ago. A better approach is to first create a list of the apps installed on your current computer. You can then review the list and decide which programs actually deserve a place on the new machine.
Windows does not provide an obvious “Export Installed Apps” button in Settings → Apps → Installed apps, but PowerShell can create a useful list for you.
Before You Begin
PowerShell is a command-line tool included with Windows. You do not need to be a programmer to use the commands in this article.
The commands below only read information about installed applications and save the results to files on your desktop. They do not uninstall or change your programs.
Create a Readable List of Installed Apps
First, open PowerShell:
- Click the Start button.
- Type PowerShell.
- Open Windows PowerShell or Terminal.
Then copy and paste the following command:
$paths = @(
"HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*",
"HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*",
"HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*"
)
Get-ItemProperty $paths -ErrorAction SilentlyContinue |
Where-Object { $_.DisplayName } |
Select-Object DisplayName, DisplayVersion, Publisher, InstallDate |
Sort-Object DisplayName -Unique |
Export-Csv "$env:USERPROFILE\Desktop\Installed-Apps.csv" -NoTypeInformation
Press Enter.
The command creates a file called:
Installed-Apps.csv
You should find it on your Windows desktop.
What Is a CSV File?
CSV stands for Comma-Separated Values. It is a simple table format that can be opened in Microsoft Excel, LibreOffice Calc, Google Sheets, or many other spreadsheet programs.
The exported file includes information such as:
- Application name
- Version number
- Publisher
- Installation date, when available
Some programs may not include every detail. For example, the installation date is sometimes blank.
Review the List Before Installing Anything
Open the CSV file and review the applications one by one.
This is a good opportunity to ask:
- Do I still use this program?
- Is it already included with Windows?
- Is there a newer or better alternative?
- Does the program require a paid licence?
- Do I know the login information?
- Does the program contain settings or data that need to be transferred?
- Was it installed automatically with another program?
You can also add your own columns to the spreadsheet, such as:
- Install on new computer
- Do not install
- Unsure
- Licence required
- Login required
- Download website
- Notes
This turns the exported list into a practical computer-migration checklist.
Export Apps Recognized by Winget
Windows also includes a package-management tool called winget. It can recognize and install many common applications.
To export apps that winget recognizes, enter this command in PowerShell:
winget export -o "$env:USERPROFILE\Desktop\winget-apps.json"
This creates a file called:
winget-apps.json
The file can later be used on another Windows computer to reinstall supported applications.
For example:
winget import -i "winget-apps.json"
However, it is usually better not to import the entire list automatically. Review your applications first so that you do not reinstall programs you no longer need.
Create a Simple Text List
For a quick, easy-to-read list, you can also run:
winget list | Out-File "$env:USERPROFILE\Desktop\winget-installed-apps.txt"
This creates a text file called:
winget-installed-apps.txt
It is useful for reference, although the CSV file is better for sorting, filtering, and adding notes.
Why the Lists May Be Different
The CSV file and the winget list may not match exactly.
The CSV command reads application information stored in the Windows Registry. Winget only lists programs it can identify through its own package database.
Some applications may therefore appear in one list but not the other.
Programs that may need separate attention include:
- Microsoft Store apps
- Printer and scanner software
- Hardware drivers
- Manufacturer utilities
- Older desktop programs
- Custom business software
- Portable apps that were never formally installed
- Programs installed only for one Windows user
Do Not Forget Application Data
An installed-app list tells you which programs are present, but it does not back up the information stored inside those programs.
Depending on the application, you may also need to transfer:
- Browser bookmarks
- Email archives
- Password-manager access
- Accounting files
- Templates
- Custom dictionaries
- Saved projects
- Game saves
- Application settings
- Licence keys
Cloud-based applications may restore much of this information after you sign in, but it is still wise to confirm before retiring the old computer.
A Cleaner Start on the New Computer
Exporting your installed apps gives you a chance to treat the new computer as a fresh start rather than an exact copy of the old one.
Begin with the programs you use regularly. Add the less important ones later, only when you actually need them.
This approach can reduce clutter, avoid unnecessary background programs, and make the new computer easier to manage from the beginning.