A Windows Start Menu management tool. Clean up junk, detect broken shortcuts, remove duplicates, organize by category, and take full control of your Start Menu.
- Broken Shortcut Detection - Identifies shortcuts pointing to files/folders that no longer exist
- Richer Shortcut Validation - Classifies
.lnk,.url, and.appref-msentries, including file URL checks - Full Shortcut Metadata - Extracts target, arguments, working directory, description, hotkey, and icon for
.lnkand.urlfiles - Risk Classification - Flags suspicious shortcuts: script hosts, network targets, encoded commands, hidden execution, long arguments, script file targets
- Package Provenance - Detects winget, Chocolatey, Scoop, MSIX, and traditional installer origins
- Duplicate Detection - Finds multiple shortcuts targeting the same executable
- Junk Detection - Flags uninstall links, readme files, help docs, license files, and other clutter
- Reparse Point Safety - Blocks junction/symlink traversal during scans and mutations
- Target Path Display - See exactly where each shortcut points
| Action | Description |
|---|---|
| Delete Selected | Remove checked items |
| Remove All Junk | Delete all detected junk items in one click |
| Remove Broken Shortcuts | Clean up shortcuts with invalid targets |
| Remove Duplicates | Keep one copy, delete redundant shortcuts |
| Flatten Single-Item Folders | Move lone shortcuts up and remove the folder |
| Remove Empty Folders | Clean up orphaned directories |
| Move All to Root | Flatten entire Start Menu by moving all shortcuts to root |
- 11 Built-in Categories: Development, Browsers, Communication, Media, Graphics, Office, Utilities, Gaming, System, Security, Networking
- Move to Category - Manually organize selected items
- Auto-Organize All - Automatically sort recognized apps into category folders based on pattern matching
- Strip Version Numbers - Remove "v1.2.3", "2024", "(1.0.0)" from names
- Clean Up Names - Remove "x64", "64-bit", "Microsoft", extra spaces, "- Shortcut" suffix
- Find & Replace - Custom text replacement in shortcut names
- DataGrid View with sortable columns: Name, Type, Status, Location, Target
- Background Scanning - Start Menu scans run in a cancelable worker so the window stays responsive
- Cancelable Bulk Execution - Reviewed operation plans run incrementally with progress and Cancel support
- Search/Filter (Ctrl+F) - Filter by name, path, or target in real-time
- Profile Targeting - Scan a selected local/offline profile or the Windows Default user profile
- Filter Toggles - Show/hide Shortcuts, Folders, Junk, Broken, Duplicates
- Sort Options - Sort by Name, Type, Status, Location, or Target
- Preview Mode - See what actions would do without executing them
- Progress Bar - Visual feedback for long operations
- Activity Log - Color-coded operation history
- Accessibility Metadata - Named controls, help text, predictable tab order, and verified contrast for core dark-theme text
- Persistent Undo Support (Ctrl+Z) - Recover reversible deletes, moves, renames, and restores from the saved operation journal
- Atomic File Writes - Config and journal files use temp-file-then-rename with
.bakrecovery for crash safety - Backup/Restore - Create timestamped backups before making changes
- Fail-Closed Restore - Validates backup contents in staging and preserves a pre-restore rollback snapshot before replacing live entries
- Editable Transaction Plans - Preview bulk actions into JSON plans that can be reviewed, exported, imported, and executed exactly
- Protected Folders - Preserves built-in folders like Startup, Windows Tools, and Administrative Tools by default
- Persistent Settings - Automatically saves scope, patterns, categories, and protected-folder preferences
- Structured Logs - Writes dated JSONL logs and crash reports under the local app data folder
- Preview Mode - Dry-run any operation first
- Confirmation Dialogs - No destructive action without explicit approval
- Export Scan Report - Export current scan results as CSV or JSON
- Enterprise Handoff - Export cleaned shortcut inventory with deployment guidance for Intune/Start Layout
- Virtual Group Preview - Preview category organization without moving files
- Rule Preset Import/Export - Save and load junk/category/protected-folder configurations
- Capability Status - Shows which scopes are writable vs read-only in the current session
- Relaunch as Admin - One-click UAC elevation for full system access
- Add/remove junk detection patterns
- Edit category patterns for auto-organization
- Export/Import configuration as JSON
- Reset to defaults
- Download
StartMenuOrganizer-v0.14.0.zipfrom the release artifacts. - Extract the zip to a local folder.
- Install for the current user:
powershell -NoProfile -ExecutionPolicy Bypass -File .\Install-StartMenuOrganizer.ps1The installer copies the app to %LOCALAPPDATA%\Programs\Start Menu Organizer, creates a Start Menu shortcut, and installs an uninstaller beside the app.
Uninstall:
powershell -NoProfile -ExecutionPolicy Bypass -File "$env:LOCALAPPDATA\Programs\Start Menu Organizer\Uninstall-StartMenuOrganizer.ps1"- Download
StartMenuOrganizerPro.ps1 - Run it from PowerShell:
.\StartMenuOrganizerPro.ps1After downloading, verify the SHA256 hash against SHA256SUMS.txt inside the zip or the .sha256 file:
(Get-FileHash .\StartMenuOrganizer-v0.14.0.zip -Algorithm SHA256).HashThe package installer is per-user and does not require elevation. For full access to both User and System Start Menus, launch Start Menu Organizer as Administrator:
- Right-click PowerShell → "Run as Administrator"
- Navigate to script location and run it
- Windows 10 or Windows 11
- PowerShell 5.1 or higher (included with Windows)
- No additional modules or dependencies
- Launch the script (as Admin for full access)
- The tool scans both User and System Start Menus by default
- Use the filter checkboxes to focus on problem items (Junk, Broken, Duplicates)
- Select items and apply actions, or use bulk operations
| Shortcut | Action |
|---|---|
Del |
Delete selected items |
Ctrl+A |
Select all visible items |
Ctrl+Z |
Undo last action |
Ctrl+F |
Focus search box |
F5 |
Refresh item list |
- Delete / Rename
- Open File Location
- Open Target Location
- Move to Category (submenu with all categories)
- Select All / Select None
- Create a Backup - Click "Backup" before making changes
- Enable Preview Mode - Check "Preview Mode" to test operations safely
- Remove Broken First - Click "Remove Broken Shortcuts" to clean invalid links
- Remove Junk - Click "Remove All Junk" to clear clutter
- Handle Duplicates - Click "Remove Duplicates" to deduplicate
- Flatten or Organize - Choose your preferred structure:
- "Move All to Root" for a flat structure
- "Auto-Organize All" for category folders
- Clean Names - Use batch rename to polish shortcut names
The tool manages shortcuts in these directories:
| Scope | Path |
|---|---|
| User | %APPDATA%\Microsoft\Windows\Start Menu\Programs |
| System | %ProgramData%\Microsoft\Windows\Start Menu\Programs |
| Selected Profile | <profile root>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs |
| Default User | %SystemDrive%\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs |
Note: System, Selected Profile, and Default User modifications require Administrator privileges. Standard users can scan readable profile targets, but destructive changes, restore, and backup operations for those scopes are blocked or skipped until the app is elevated.
Default patterns that flag items as junk:
*uninstall*, *readme*, *help*, *documentation*, *manual*,
*license*, *website*, *support*, *visit *, *about *,
*release notes*, *changelog*, *what's new*, *getting started*,
*user guide*, *online *, *web link*, *url*, *register*,
*feedback*, *update*, *check for update*
Each category has wildcard patterns for auto-organization. Examples:
- Development:
Visual Studio*,VS Code*,Git*,Python*,Docker* - Browsers:
Google Chrome*,Firefox*,Edge*,Brave* - Gaming:
Steam*,Epic Games*,GOG*,Xbox*
Save your customized patterns:
- Go to Settings tab
- Click "Export Config"
- Save the JSON file
UI strings are centralized in the app and can be overridden without editing layout logic. Add JSON files under %LOCALAPPDATA%\StartMenuOrganizerPro\Localization:
strings.<culture>.json, such asstrings.en-US.jsonstrings.<language>.json, such asstrings.en.jsonstrings.jsonas the fallback override file
Each file maps string keys to replacement text, for example:
{
"btnBackup.Content": "Create Backup",
"txtSearch.AutomationName": "Search Start Menu entries"
}To work against another local or offline Windows profile:
- Open Settings.
- Set Profile Target to the profile root, such as
D:\MountedUsers\AliceorC:\Users\Alice. - Select Selected Profile in the Scope picker.
- Run Start Menu Organizer as Administrator before applying changes, backup, or restore for that profile.
Use Default User in the Scope picker to prepare %SystemDrive%\Users\Default; it is also admin-gated and uses separate DefaultUser backup folders.
| Item | Location |
|---|---|
| Backups | %LOCALAPPDATA%\StartMenuOrganizerPro\Backups |
| Restore rollback snapshots | %LOCALAPPDATA%\StartMenuOrganizerPro\Backups\_restore_rollback |
| Undo journal | %LOCALAPPDATA%\StartMenuOrganizerPro\undo.json |
| Undo backups | %LOCALAPPDATA%\StartMenuOrganizerPro\UndoBackups |
| Config | %LOCALAPPDATA%\StartMenuOrganizerPro\config.json |
| Logs and crash reports | %LOCALAPPDATA%\StartMenuOrganizerPro\Logs |
| Localization overrides | %LOCALAPPDATA%\StartMenuOrganizerPro\Localization |
Run the full local gate:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\Run-Tests.ps1Build the release package:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tools\Build-Release.ps1Run the local restore safety regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\RestoreSafety.Tests.ps1Run the persistent undo journal regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\UndoJournal.Tests.ps1Run the guarded file-operation regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\GuardedFileOperation.Tests.ps1Run the editable operation-plan regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\OperationPlan.Tests.ps1Run the async scan wiring regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\AsyncScan.Tests.ps1Run the shortcut validation regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\ShortcutValidation.Tests.ps1Run the settings persistence regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\SettingsPersistence.Tests.ps1Run the structured logging regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\Logging.Tests.ps1Run the accessibility and localization regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\AccessibilityLocalization.Tests.ps1Run the profile/default-user targeting regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\ProfileTarget.Tests.ps1Run the reparse-point safety guards regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\SafetyGuards.Tests.ps1Run the shortcut metadata and risk classification regression test:
powershell -NoProfile -ExecutionPolicy Bypass -File .\tests\ShortcutMetadata.Tests.ps1- Run the script as Administrator for System Start Menu access
- Click "Refresh" or press F5
- Check filter toggles - some types may be hidden
- Undo restores the latest reversible operation from the saved journal
- For older changes, use "Restore" to recover from a backup
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser- Check
%LOCALAPPDATA%\StartMenuOrganizerPro\Logsfor dated.jsonllogs andStartMenuOrganizer-Crash-*.logfiles
Start Menu Organizer cleans up and reorganizes what's already in your Start Menu — removing junk, broken links, and duplicates, and sorting apps into folders. If you want to save, deploy, or restore a Start Menu layout across machines or after Windows updates, see the companion tool:
Start Menu Manager — Export/import Start Menu layouts and taskbar configurations, manage named profiles, and perform full backups. Use Start Menu Organizer to clean up first, then Start Menu Manager to preserve and deploy the result.
Contributions are welcome! Feel free to submit issues and pull requests.
MIT License — see the LICENSE file for details.
Tip: Always create a backup before bulk operations. While undo is available, backups provide the safest recovery option.