Windows remembers the key for every wireless network the machine has ever joined, and it will show you any of them. There are two routes: a few clicks for the network you are on right now, and one command for a network you joined months ago and have not seen since.
Both need an administrator account on the PC. Neither needs software, and nothing here reveals a network the machine has not previously connected to — Windows can only show you what it already stored.
- Current network
- Settings, four clicks, tick Show characters.
- Any past network
- One
netshcommand with the network name. - Needed
- An administrator account on that PC.
- Will not work
- Networks the machine has never joined. There is no stored key to read.
The network you are connected to now
- Open Settings and go to Network & internet.
- Choose Advanced network settings near the bottom.
- Under Related settings, click More network adapter options. An old-style Control Panel window opens — this part of Windows has not been redesigned in twenty years.
- Right-click your Wi-Fi adapter and choose Status.
- Click Wireless Properties, then open the Security tab.
- Tick Show characters. The key appears in the Network security key box.
On Windows 10 the path is slightly shorter: Settings → Network & Internet → Status → Change adapter options, then the same right-click from step four.
No “Show characters” tick box?
That box is greyed out for standard accounts. Sign in as an administrator, or right-click the Control Panel window and choose Run as administrator if your account can elevate.
A network you joined before but are not on now
The Settings route only reaches the active connection. For anything else, Windows keeps a profile for every network it has joined, and the command line will read it out.
- Press the Windows key, type cmd, and choose Run as administrator.
- List the stored networks:
netsh wlan show profiles - Find the one you want in the User profiles list, then ask for its key:
netsh wlan show profile name="YOUR NETWORK NAME" key=clear - Read the Key Content line under Security settings. That is the password.
Keep the quotation marks if the network name contains spaces. If the name has an apostrophe or an accented character, copy it exactly from the show profiles output rather than retyping it.
Getting all of them at once
Useful when you are rebuilding a machine and want every key before you wipe it. In an administrator Command Prompt:
for /f "skip=9 tokens=1,2 delims=:" %i in ('netsh wlan show profiles') do @echo %j | findstr -i -v echo | netsh wlan show profile %j key=clear | findstr -i "SSID Key Content"
It prints each network name followed by its key. Treat the output as sensitive — it is every wireless password that machine holds, in plain text.
These are passwords, on screen
Do not run any of this on a shared screen or in a recorded call. Close the window afterwards rather than leaving it in the scrollback.
When Windows has nothing to show
If the network was never joined on this PC there is no stored profile and no command will invent one. The key has to come from somewhere that holds it — the router label, another device, or the router’s own settings pages.
That last route needs the router’s admin password rather than the wireless one, and the two are routinely confused. Our main guide to finding a Wi-Fi password covers every route in order of effort, and if you need the admin side, we hold documented defaults for 460 manufacturers.
While you are in there
If the key you just recovered is the one printed on the router, it is worth replacing. Printed defaults are readable by anyone who can see the hardware, and on some older kit they are derived from the network name in a reversible way.
- Four or more unrelated words beats a short complex string — easier to read out, much harder to crack.
- Use WPA3 if the router offers it, WPA2 with AES otherwise.
- Change the router’s admin password as well. A strong wireless key with
adminon the settings page is a locked door beside an open window.



