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

Incredible Demos

  • By
    MooTools Fun with Fx.Shake

    Adding movement to your website is a great way to attract attention to specific elements that you want users to notice. Of course you could use Flash or an animated GIF to achieve the movement effect but graphics can be difficult to maintain. Enter...

  • By
    AJAX Page Loads Using MooTools Fx.Explode

    Note: All credit for Fx.Explode goes to Jan Kassens. One of the awesome pieces of code in MooTools Core Developer Jan Kassens' sandbox is his Fx.Explode functionality. When you click on any of the designated Fx.Explode elements, the elements "explode" off of the...

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!