Set Default Browser on Mac

By  on  

I like using edge browsers each day so that I'm aware of what features my website visitors will be seeing down the road, and to get an early glimpse at new browser and API features.  I prefer to do my basic browsing in Chrome Canary and my developing in Firefox Nightly.  Since I do more browsing than developing (i.e. checking email, researching coding techniques, writing, etc.), I wanted to make Chrome Canary my default browser, but when I click the button to do so, nothing happens.  WTF?!

Well, there's a way to make it happen...but you need to use Safari to do it.  How's that for a hack?!

Safari Preferences

Safari's preferences pane has a "Default Web Browser" dropdown for which you can set the default browser.  Each of the browsers you have on your system will display in the dropdown.  Going to another browser to set a different browser as the default?!  Whatever, it works.

Safari's preferences no longer allow you to select a default browser from dropdown but Mac's System preferences do! Navigate to "System Preferences" > "General" and you'll see a "Default Web Browser" label with a dropdown of the system's available browsers:

Default Browser

I'm super pleased that Mac allows me to set Chrome Canary as a default browser despite Google not wanting to allow it. User choice rules!

Recent Features

  • By
    How to Create a RetroPie on Raspberry Pi – Graphical Guide

    Today we get to play amazing games on our super powered game consoles, PCs, VR headsets, and even mobile devices.  While I enjoy playing new games these days, I do long for the retro gaming systems I had when I was a kid: the original Nintendo...

  • By
    Camera and Video Control with HTML5

    Client-side APIs on mobile and desktop devices are quickly providing the same APIs.  Of course our mobile devices got access to some of these APIs first, but those APIs are slowly making their way to the desktop.  One of those APIs is the getUserMedia API...

Incredible Demos

Discussion

  1. Thanks, I usually manually open Canary to browse in but when I boot up MAMP it opens Chrome for me – set it to open Canary so I can dev on the edge now!

    I know it only saves a few seconds, but it sure makes the workflow seem smoother :)

  2. Why didn’t I think of that? Very helpful tip! Thanks David!

  3. Bianca

    Thank you, this has been making me crazy! Prefer canary, and hate that every link I click on in email opens old chrome :)

  4. Nice! I have been trying to figure that out for a while. Thanks

  5. PaulW

    In Yosemite this has moved to System Preferences -> General.

  6. PaulW……you are a legend!!! Thanks for that tip…looked for a couple of hours.

  7. Ronny

    Thanks a lot!

  8. Chris

    Just a note: in recent version (Yosemite +) Safari turns this control into a toggle. You can access the browser drop-down in System Preferences > General > Default Web Browser

  9. Danny Peck

    This doesn’t appear to work in newer versions of Safari. :/ That dropdown is gone.

    • Marina

      Danny, you’re right: In newer Safari, it’s no longer an option. Follow Chris’s instructions (directly above your comment) to go to your Mac’s “System Preferences” and select your default browser there.

  10. Will

    If, like me, you often have multiple browsers open, you might like this super-handy app called Choosy. Whenever you open a link (from Mail for example) it can prompt you for which browser you’d like to open the link in, or you can set rules (“use Firefox if it’s open, otherwise prompt me” etc)

    http://www.choosyosx.com

  11. I have El Capitan and none of above methods work. There is no menu in Safari, no possibility to chose default browser in System Preferences and on the top of that I’ve downloaded Choosy and I still have Safari popping up when clicking links. And Chrome that I was using before that was screwing Command-C. Nice.

  12. Great post, I never use regular chrome anymore. This just made my life a little easier.

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!