How to open links in a specific browser or profile on Windows

Windows lets you pick one default browser for every link. If you want work links in your work profile, some sites in Edge, and your bank in a private window, you need something in between. This guide shows how to set that up with FlexiLink in about five minutes.

1. Install FlexiLink

Download FlexiLink-Setup-26.10.0.exe and run it. It installs just for your Windows user, so you don’t need administrator rights. If your PC doesn’t have the Windows App SDK Runtime yet, the setup gets it from Microsoft automatically.

2. Make FlexiLink the default browser

Windows only sends links to the default browser, so FlexiLink has to be it. Don’t worry: your real browsers keep working, and FlexiLink passes each link it receives on to one of them.

  1. On the last page of the setup, click Make default. Skipped it? Open FlexiLink from the Start menu, go to Settings (the gear at the bottom left) and click Make default there.
  2. Windows opens Default apps already showing FlexiLink. Click Set default.
Windows 11 Settings, Default apps page for FlexiLink with the Set default button
Windows asks you to confirm – apps aren’t allowed to take over the default browser silently.

That’s it. Click any link in email or chat and you’ll see the FlexiLink picker. Tip: switch on Check on Startup on the same page, and FlexiLink will tell you if another app ever takes the default back.

3. Add your first rule

The quickest way is right from the picker: click a link, tick Always open site in the selected browser or profile, and pick the browser. Done – that site now always opens there.

For more control, use the Rules page:

  1. In Settings, open Rules and click Add rule.
  2. Choose a Match type and type the site or pattern.
  3. In Open with, choose a browser – or one of its profiles.
  4. Optional: tick Private mode, and give the rule a Name.
Editing a rule in FlexiLink: Match type, the host, Open with Google Chrome, and the Private mode checkbox ticked

4. Which match type to choose

Start with the simplest type that does the job. Most rules are Exact host.

Exact host

Matches one website by its name. Capital letters don’t matter.

RuleMatchesDoesn’t match
github.comhttps://github.com/…https://gist.github.com/…

Exact host with “Include subdomains”

Matches the site and everything in front of its name – but not look-alike domains.

RuleMatchesDoesn’t match
example.com + subdomainsexample.com, www.example.com, a.b.example.comnotexample.com

URL pattern

Matches the whole address with wildcards: * is any run of characters, ? is exactly one. Use it for a part of a site.

RuleMatchesDoesn’t match
https://*.example.com/docs/*https://help.example.com/docs/setuphttps://help.example.com/blog/news, http://…
*://example.com/*https://example.com/, http://example.com/ahttps://www.example.com/

URL regex

A regular expression over the whole address, for anything the other types can’t express. If the expression has a mistake, FlexiLink tells you while you type and never uses a broken rule.

FlexiLink uses the syntax of the Rust regex library. To build and debug an expression, try it on regex101.com with the Rust flavor – paste a few real links as test strings.

RuleMatches
^https?://localhost(:\d+)?Any local development server, on any port
^https://[^/]+\.example\.com/admin/The admin area of any example.com subdomain

5. Rule order: the first match wins

FlexiLink checks your enabled rules from top to bottom and uses the first one that matches. Put specific rules above general ones. For example, if docs.example.com should open in Edge but the rest of example.com in Chrome, the docs rule goes first. Drag a rule by its handle to move it.

A switched-off rule keeps its place but is skipped. If no rule matches, you get the picker as usual.

6. Test your rules

On the Rules page, click ⋯ next to Add rule and choose Test rules…. Paste or type any link – even without https:// – and FlexiLink lists every rule that matches, in order. The first one is the one that will be used.

FlexiLink Test rules panel: a URL typed at the top and the matching rule listed below it

7. Recipes for common setups

Work tools in the work profile

Your company uses Jira, Confluence and Microsoft 365, and you’re signed in to them in a Chrome profile called Work.

Match typePatternOpen with
Exact host + subdomainsyourcompany.atlassian.netGoogle Chrome – Work
Exact host + subdomainssharepoint.comGoogle Chrome – Work
Exact host + subdomainsyourcompany.comGoogle Chrome – Work

Everything else still shows the picker – or add a last catch-all rule if you always want your personal profile otherwise (see below).

One profile per client

A freelancer with a Chrome profile per client adds one rule per client domain: client-a.com → Chrome – Client A, client-b.io → Chrome – Client B. Shared tools with client-specific addresses, like client-a.slack.com, are covered by “Include subdomains” on the client’s rule, or by their own exact-host rule.

Google Docs in the personal account

Match typePatternOpen with
URL patternhttps://docs.google.com/*Google Chrome – Personal

Banking and shopping in a private window

Match typePatternOpen withPrivate mode
Exact host + subdomainsyourbank.comMozilla FirefoxOn

Web development

Match typePatternOpen with
URL regex^https?://(localhost|127\.0\.0\.1)(:\d+)?Firefox Dev Profile (a custom browser with its own profile)
Exact host + subdomainsstaging.yourapp.comMicrosoft Edge

Everything from one app

Want every link from Thunderbird in your work profile, whatever the site? Choose the app in Source process and use the pattern *:

Match typePatternSource processOpen with
URL wildcard*thunderbird.exeGoogle Chrome – Work

The app’s name is its program file; thunderbird works too. You don’t have to look it up: click a link in that app, choose Create Rule in the picker, and click Use … under Source process in the rule editor – for a link clicked in Windows Terminal, Use WindowsTerminal.exe.

The Source process field in the FlexiLink rule editor, empty (Any), with the hint “The app the link is clicked in” and a Use WindowsTerminal.exe link
After Create Rule in the picker: one click fills in the app.

Links from Outlook and Teams

If your company uses Microsoft Safe Links, every link in email points to …safelinks.protection.outlook.com, and a rule for your own site never matches. Turn on Unwrap links on the Settings page (the gear at the bottom left): FlexiLink then matches rules against the real address inside, while still opening the original link so Safe Links can check it. See link unwrapping.

A catch-all at the bottom

Want the picker only for sites you haven’t decided about, and your personal profile for everything else? You don’t need a catch-all at all – the picker is the catch-all. But if you’d rather never see the picker, add a last rule of type URL pattern with the pattern * pointing to your everyday browser. Because it’s last, every specific rule above it still wins.

8. One-off exceptions

Need to open a link somewhere else just this once? Hold Shift while you click the link. FlexiLink skips your rules and shows the picker. In the picker, Ctrl+click opens a private window, and Shift+click keeps the picker open so you can open the same link in a second browser too.

If the picker doesn’t appear: look for a flashing FlexiLink button on the taskbar and click it. Windows doesn’t let new windows jump in front of you while you’re using the keyboard, and FlexiLink respects that instead of working around it.
Good to know: FlexiLink routes standard HTTP and HTTPS links that Windows sends to your default browser. It doesn’t see mailto: or other app-specific links (like a Zoom or Teams meeting link that opens its app), links opened inside apps with their own built-in browser, apps that open a particular browser directly, or links you click inside a browser. Those keep working as before.

Set it up on your PC

Free for 30 days, every feature included. If you like it, a license is $19 per PC (excl. VAT) – once, not every month.

Windows 10 (1809+) and Windows 11, 64-bit · Version 26.10