Finicky decides which browser opens each link on your Mac. You set it as the default browser, and it hands every URL to the browser your rules choose, for example work sites in Chrome and everything else in Safari or Firefox.
Rules live in a config file at ~/.finicky.js, written in JavaScript or TypeScript. Handlers match URLs with wildcards, regular expressions or your own functions and send them to a browser or another app. Rewrite rules change a URL before it opens, such as forcing HTTPS or removing tracking parameters.
Starting Finicky by hand opens a window for checking your config and troubleshooting. Extensions for Chrome and Firefox add an Open with Finicky item to links, and Alt-clicking a link sends it to Finicky. It suits people who split work and personal browsing and like to keep that setup in a text file.
Finicky is free and open source under the MIT licence, made by John Sterling. It ships as a universal app for Apple Silicon and Intel Macs and needs macOS 12 or later.
Frequently asked questions
Is Finicky free?
Yes. Finicky is free, with no paid version. You can download it from GitHub or install it with Homebrew.
Is Finicky safe and open source?
Yes. The source code is on GitHub under the MIT licence. Your rules run from a local config file on your Mac.
How do I install Finicky?
Download Finicky.dmg from the GitHub releases page, or run brew install --cask finicky. Then create ~/.finicky.js, open Finicky and allow it to become the default browser.
What macOS version does Finicky need?
Finicky 4 needs macOS 12 Monterey or later. Since version 4.1.1 it is a universal build that runs natively on Apple Silicon and Intel. The last stable release is 4.2.2 from October 2025, with 4.3 and 4.4 alpha builds published since.
How does Finicky compare to Choosy or Velja?
Choosy and Velja set up rules and a browser picker through a settings window. Finicky has no picker or settings screen. You write rules in code, which gives more control but takes more setup. The Finicky README suggests pairing it with Browserosaurus if you want a picker.
How do I open a website in a specific browser with Finicky?
Add a handler to ~/.finicky.js with a match pattern such as a domain followed by /* and the browser name, for example Firefox. Set defaultBrowser for every link that no handler matches.
Gallery
No images yet.
Apps like Finicky
More apps from Utilities.
More in Utilities

Hammerspoon
Free automation tool for Mac that lets you script hotkeys, windows and apps in Lua.
UtilitiesFree

Input Source Pro
Free keyboard layout switcher for Mac that changes input source per app and per website.
UtilitiesFree

Aerial
Free Apple TV screensaver for Mac that also works as a live wallpaper, with clock and weather overlays.
UtilitiesFree

Alcove
Dynamic Island for your Mac.
UtilitiesPaid

Compresto
Video, image, and PDF compression for macOS.
UtilitiesPaid

GetCompress
Batch-compress videos, images, GIFs, and PDFs offline, with clipboard and folder automation.
Utilities$19 lifetime (promo, regular $39)