Skip to content
Rod Christiansen edited this page Sep 3, 2026 · 2 revisions

TaskbarUtil

TaskbarUtil is a command-line utility for managing the pinned items on the Windows 11 taskbar. It is the Windows counterpart of macOS dockutil: a scriptable way for an administrator to decide what a managed user's dock — here, taskbar — contains, in what order, without touching the machine by hand.

The mechanism is completely different from dockutil's, and that difference is the first thing to understand. dockutil edits com.apple.dock.plist directly and asks the Dock to reload; the plist is a documented, writable file and the Dock honours whatever is in it. Windows 11 has no equivalent. Microsoft removed the shell verbs that used to pin and unpin taskbar items, and the binary pin store (Favorites in the Taskband key, and start2.bin) is undocumented and unwritable in any supported way. The one supported path left is policy: a LayoutModification.xml file pointed at by a registry policy value, which Explorer reads when it builds the taskbar.

So TaskbarUtil is really two things: a builder for that XML that resolves friendly app names to the identifiers the XML needs, and a deployer that installs the XML as local policy and forces Explorer to rebuild against it. add, remove, move and replace edit a local config file and change nothing on screen. apply is the step that makes the taskbar match it.

Quick start

Download the MSI for your architecture from the Releases page and install it. The package installs taskbarutil.exe to C:\Program Files\sbin and adds that directory to the machine PATH.

msiexec /i TaskbarUtil-x64-<version>.msi /qn

Build a layout, look at it, then deploy it:

taskbarutil add "File Explorer"
taskbarutil add "Microsoft Edge"
taskbarutil add "Windows Terminal"
taskbarutil show
taskbarutil apply

apply restarts Explorer, so the taskbar disappears for a few seconds and comes back carrying exactly the pins in the config, in order. To undo everything and get the stock taskbar back:

taskbarutil reset

Where to go next

Page What it covers
Installation Supported Windows builds, MSI / nupkg / zip / build-from-source, verification, uninstall
CLI Reference Every command, flag, argument and exit code
Configuration The config file, every registry key the tool reads or writes, log locations
Layout XML Reference The LayoutModification.xml schema TaskbarUtil generates and parses
Architecture What runs in what order, where state lives, how app-name resolution works
Coming From dockutil Verb-by-verb and flag-by-flag mapping, and what has no Windows equivalent
Deployment At Scale What an admin runs at image time versus at login, and for which user
Troubleshooting Symptom → cause → fix, log files, the failure modes visible in the code
Development Repo layout, build, tests, how a release is cut
FAQ The questions a Mac admin asks in the first hour

What it does not do

Being blunt about the limits saves time later. TaskbarUtil cannot pin a single app to an already-running taskbar without rebuilding the whole thing — the layout is all-or-nothing because PinListPlacement="Replace" is how the XML works. It cannot remove a pin from a user's taskbar that the user pinned themselves except by replacing the entire pin list. It has no Windows 10 support path of its own, and no scheduling, inventory or reporting. See Troubleshooting and FAQ for the specifics.

License

Apache-2.0. Source at github.com/windowsadmins/taskbarutil.

Clone this wiki locally