Now that Edge (chromium) is so damn good on Windows I use only one browser, but manage multiple profiles within it. So I have profiles for work, personal and customer projects. I can then open a dedicated browser within each profile and be working purely in that context keeping me productive.

One thing you might like to do is create a shortcut to a specific browser profile. With a browser profile already running you can select the Pin to taskbar option by right clicking on the running browser here:

What this is doing is creating a shortcut to msedge.exe with the appropriate arguments to select the corresponding profile such as this:

C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --profile-directory="Profile 3" --flag-switches-begin --flag-switches-end

Under the hood, the profiles are managed within C:\Users\%USERPROFILE%\AppData\Local\Microsoft\Edge\User Data, so if you’ve created multiple profiles you’ll see directories such as:

  • Default
  • Profile 1
  • Profile 2
  • Profile 3
  • Profile 4

However, there is no immediate way to resolve the profile name with the underlying profile id, even from within the profiles screen:

So how can you determine that the “Customer A” profile is “Profile 3”? Well, if you type the following url within a specific browser profile it will show you the underlying profile directory:

edge://version

Side note, you can also do this with Chrome:

chrome://version

A Browser selector using browser profiles

So whilst being able to create your own shortcuts, or pinning profiles to the Taskbar for specific profiles is useful. It would be really productive if you could have the right browser profile automatically opened whenever you click on a hyperlink.

BrowserPicker is a nifty utility by Morten Nilsen that either lets you pick your preferred browser on the fly, or by a set of predefined rules. A nice addition by my colleague Stuart Leeks, is that you can specify the CommandArgs for a browser. This essentially allows you to use pass the above mentioned command switches for Edge (or Chrome), so that you can add each browser profile as a separate browser.

Name Edge Customer A
Command C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe
CommandArgs --profile-directory=“Profile 3”
Icon C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe

Each browser profile can then be targeted using rules, such as the start of the full url eg:

Rule Browser
|prefix|https://dev.azure.com/customerA Edge Customer A
|prefix|https://dev.azure.com/customerB Edge Customer B

Stuart also added a regex rule too :)