How to Export a List of Installed Software on Windows

How to Export a List of Installed Software on Windows

Whether you’re preparing for a system reinstall, auditing licenses across office computers, or just trying to remember what you installed six months ago, Windows doesn’t make it obvious how to get a clean, exportable list of your installed programs. The Settings app shows you what’s installed, but there’s no visible “export” button — which sends most people straight to a search engine.

The good news is that Windows already has the tools built in to generate this list, no extra software required, plus a few reliable third-party options if you need something more detailed. This guide walks through every practical method, from the quickest one-line command to full inventory tools, so you can pick whichever fits your situation.

How Do You Export a List of Installed Software?

The fastest way to export a list of installed software on Windows is through PowerShell. Open PowerShell and run a command that pulls installed program details from the registry, then export the results directly to a CSV file:

Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* |

Select-Object DisplayName, DisplayVersion, Publisher, InstallDate |

Export-Csv -Path “$env:USERPROFILE\Desktop\InstalledSoftware.csv” -NoTypeInformation

This creates a spreadsheet-ready CSV file on your desktop listing every installed application’s name, version, publisher, and install date — no additional software needed.

Why Export a List of Installed Software?

Exporting an installed software list isn’t just a one-off curiosity — it solves practical, recurring problems:

  • Reinstalling Windows — keep a reference list so you don’t forget what to reinstall afterward.
  • License and compliance audits — confirm which software versions are actually running across machines.
  • IT asset management — track software inventory across multiple company devices.
  • Troubleshooting — compare installed software before and after an issue appeared.
  • Migrating to a new PC — quickly check what needs to be reinstalled on the new machine.

Methods to Export Installed Software on Windows

Methods to Export Installed Software on Windows
Source: custom

Using PowerShell

PowerShell is the most reliable built-in method because it reads directly from the Windows registry, where installed program details are stored.

  1. Open PowerShell as Administrator (search “PowerShell,” right-click, choose Run as administrator).
  1. Run the command shown in the Quick Answer section above.
  1. Open the generated CSV file in Excel or any spreadsheet application.

For 32-bit programs on a 64-bit system, also check the standard HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* path, since some entries are split between the two registry locations.

Using Command Prompt (WMIC)

WMIC (Windows Management Instrumentation Command-line) can also list installed software, though Microsoft has marked it deprecated in newer Windows 11 builds — it still works on most current systems but may not be available long-term.

  1. Open Command Prompt.
  1. Run: wmic product get name,version /format:csv > “%userprofile%\Desktop\InstalledSoftware.csv”.
  1. Open the resulting file from your desktop.

Note that the wmic product command can be noticeably slow, since it triggers a consistency check on installed MSI packages as it runs.

Using Windows Settings and Apps

Windows Settings lets you view installed software but doesn’t include a native export option:

  1. Open Settings > Apps > Installed apps.
  1. Browse or search the list, sorting by name, size, or install date.
  1. To capture it manually, you’d need to copy entries one by one — impractical for large lists.

This method is useful for a quick visual check, but for anything you need to save or share, PowerShell or a dedicated tool is faster.

Using Third-Party Software Inventory Tools

For more detailed reporting — especially across multiple machines — dedicated tools go further than built-in commands:

ToolBest For
Belarc AdvisorDetailed system and license reports
CCleanerSimple installed-program list with uninstall options
IObit UninstallerProgram list plus bulk uninstall features
PDQ InventoryIT teams managing software across many devices

These tools generally offer more formatting options and additional details (like install size or last-used date) than the built-in Windows methods.

How to Export the List to CSV or Text File

How to Export the List to CSV or Text File
Source: youtube

Once you’ve chosen a method, exporting cleanly comes down to a few small adjustments:

  • For CSV format, use Export-Csv in PowerShell (as shown above) or the /format:csv flag in WMIC.
  • For a plain text file, redirect PowerShell output with Out-File, for example: Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName | Out-File “$env:USERPROFILE\Desktop\InstalledSoftware.txt”.
  • To open in Excel directly, make sure the CSV file includes the -NoTypeInformation flag so PowerShell doesn’t add extra metadata lines that break column formatting.

Common Problems and How to Fix Them

  • Empty or missing entries — some apps store data in a different registry path (32-bit vs 64-bit); check both Uninstall key locations.
  • WMIC not recognized — this happens on newer Windows 11 systems where WMIC has been removed; use the PowerShell method instead.
  • CSV opens with garbled formatting — this usually means the file wasn’t exported with -NoTypeInformation; re-run the export with that flag included.
  • List missing Microsoft Store apps — traditional registry-based methods only capture desktop (Win32) apps; use Get-AppxPackage | Select Name, Version | Export-Csv … to include Store apps separately.
  • Access denied errors — run PowerShell or Command Prompt as Administrator to avoid permission issues reading certain registry keys.

Best Practices for Managing Software Inventory

  • Export your software list right after setting up a new PC, so you have a clean baseline to compare against later.
  • Re-export periodically (quarterly is reasonable for most home and small-business users) rather than relying on memory.
  • Store exported CSV files somewhere backed up, not just on the same machine you’re documenting.
  • For multiple computers, standardize on one export method so the files stay easy to compare.
  • Include install dates in your export when possible — they make troubleshooting recent issues much faster.

Frequently Asked Questions

How do I export a list of installed programs in Windows?

The most reliable way is through PowerShell, using a command that reads installed program details from the registry and exports them directly to a CSV file, as shown in the Quick Answer section above.

Can I export installed software to Excel?

Yes. Export the list to CSV using PowerShell or WMIC, then open that CSV file directly in Excel — it will automatically organize the data into columns.

Does PowerShell list all installed software?

PowerShell’s registry-based method captures most traditionally installed (Win32) desktop programs, but Microsoft Store apps require a separate command (Get-AppxPackage) since they’re tracked differently.

Which method is the most accurate?

PowerShell is generally the most accurate and complete built-in method, since it reads directly from the same registry data Windows itself uses to track installed programs. Third-party tools can add extra detail but aren’t necessarily more accurate.

Conclusion

Exporting a list of installed software on Windows doesn’t require any extra downloads — a single PowerShell command gets you a clean, shareable CSV in seconds. WMIC and the Settings app work as backups, and third-party tools are worth it only if you need deeper reporting across multiple machines. Whichever method you choose, make exporting a habit rather than a one-time task — a recent software inventory saves real time the next time you’re troubleshooting, reinstalling, or auditing your system.

By Uzair

Leave a Reply

Your email address will not be published. Required fields are marked *