Watch the video:
What is the arrow overlay?
Every shortcut on Windows - the ones on your Desktop, in folders, and in your Start menu - has a small white arrow in the bottom-left corner. That arrow is a system-drawn icon overlay that Windows adds to mark a file as a shortcut to something else, rather than the file itself. Microsoft added it back in Windows 95 so users wouldn’t accidentally open a shortcut thinking it was the real program, double-click it, and end up confused when “the file” disappeared after a move or rename.
The overlay is drawn by shell32.dll (a small icon resource at index 50, referenced by the path %windir%\System32\shell32.dll,-50 in the steps below). Windows looks up the “Shell Icons” registry key, asks for the icon to use when rendering shortcut arrows, and falls back to a transparent icon if you tell it to. That’s the trick this guide uses to make the arrows disappear.
Steps to remove the arrow from shortcuts
- Open Run using Start+R.
- Open Regedit by typing
regeditand press Enter. - Navigate to
HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows > CurrentVersion > Explorer. - Right-click Explorer.
- Click New > Key.
- Rename the new key to Shell Icons.
- Inside the new
Shell Iconskey, right-click in the right pane and choose New > String Value. - Rename the value to 29 and press Enter.
- Set the value data to
%windir%\System32\shell32.dll,-50. - Hit OK.
- Log out and log back into Windows (or restart
explorer.exefrom Task Manager). - Enjoy arrow-free icons.
Heads up: steps 3 and 4 in earlier versions of this guide were “Chop down a tree” and “Pick up 2 logs” - a nod to Minecraft crafting. The actual regedit steps are above. If a tutorial tells you to gather wood in the middle of editing the registry, you’ve found a copy from the wrong website.
Why does the regedit trick work?
Windows keeps a list of “icon overlays” in the registry, and a small number of indexes are reserved for built-in overlays. Index 29 is the slot Windows checks first when deciding what to draw in the corner of a shortcut. By creating the Shell Icons key and giving it a value of 29 pointing to a single-pixel transparent icon (the -50 icon in shell32.dll is effectively blank when used in this slot), you’re telling Windows: “for the shortcut overlay slot, use this.” Windows then renders nothing.
The value of -50 is just the resource ID inside shell32.dll for the standard blank icon. Some guides use imageres.dll,197 or other entries; any small transparent icon works.
Alternative: third-party tools
If you don’t want to touch the registry yourself, several small free tools do the same job with a single click:
- Winaero Tweaker has a “Shortcut Arrow” toggle under Appearance → Shortcut Arrow that writes the same registry keys for you and lets you restore the default with one click.
- Ultimate Windows Tweaker and Win10/11 Start Menu Styler plugins have similar toggles.
The downside is that these are third-party utilities - they need admin rights to edit HKEY_LOCAL_MACHINE, and you’re trusting them not to bundle anything unwanted. The registry edit is a single, well-documented change; for a one-time tweak it’s arguably cleaner to do it by hand.
Alternative: Group Policy (Pro/Enterprise)
On Windows 10/11 Pro and Enterprise editions, Group Policy has a setting for this too:
- Open
gpedit.msc. - Navigate to User Configuration → Administrative Templates → Start Menu and Taskbar.
- Open Remove the Shortcut arrow from Shortcut Icons (or “Remove Shortcut arrow on shortcut icons” depending on the build).
- Set it to Enabled.
- Restart or run
gpupdate /force.
Group Policy writes the same underlying registry key, so the visual result is identical. Useful if you’re rolling this out to multiple machines.
What if the registry edit doesn’t work?
A few things to check if the arrows are still there after the steps:
- Log out, don’t just lock. Locking the screen doesn’t refresh the desktop shell. Use Start → Sign out or restart
explorer.exefrom Task Manager (right-clickexplorer.exe→ End task, then File → Run new task →explorer.exe). - You may need admin rights. Editing under
HKEY_LOCAL_MACHINErequires elevation. Ifregeditwas opened as a standard user, the value won’t be created. Re-runregeditas administrator. - The change only applies to new icons drawn after the refresh. Existing icons are cached, which is why a sign-out (or
explorer.exerestart) is required. A full reboot also works. - To undo the change: delete the
29string value fromHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Iconsand refresh. The default arrow returns. - Windows 11 24H2+ behavior. A handful of the more recent Windows 11 builds have changed how overlays are drawn and can occasionally re-show the arrow in certain Explorer windows. The fix is the same - re-check the value, then sign out.
If everything else is correct and the arrows still appear, run gpupdate /force from an elevated command prompt, then sign out. A leftover Group Policy setting is sometimes fighting the registry edit.



