Force Google Chrome Incognito Mode on Startup
Much like its competitors, Chrome allows an Incognito mode which will discard any browser data after the session ends. This is great however there is no way (that I could find) to tell Chrome to always start in this mode.
Yes you can change the shortcut on your desktop and add the -incognito
switch but this is not always invoked. If Chrome is your default browser Start > Run > https://www.google.com
will not launch it in Incognito Mode. If any applications start the browser without using the shortcut (through protocol or file associations) the browser will start in normal mode.
There is no .conf
or .ini
or .json
file you can edit to tell Chrome to always start in Incognito Mode, which seems like a strange omission. By altering a few default settings, FF and IE can be told to remove all traces of browser data upon exiting. The only thing in Chrome that comes close is under Privacy > Cookies
section. You can remove all cookies and “other site data” when exiting the browser but this is not true Incognito.
What we can do is modify some registry settings and tell Windows to start a batch file instead of the chrome.exe
main application. When Chrome is made the default browser it modifies a few registry keys to tell Windows where to go when associating a protocol with an application (in our case: HTTP and HTTPS).
So let’s tell it to use chrome.cmd
instead of chrome.exe
:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\ChromeHTML\shell\open\command]
@="\"V:\\Tools\\start_chrome_incognito.cmd\" -- \"%1\""
[HKEY_CLASSES_ROOT\http\shell\open\command]
@="\"V:\\Tools\\start_chrome_incognito.cmd\" -- \"%1\""
[HKEY_CLASSES_ROOT\https\shell\open\command]
@="\"V:\\Tools\\start_chrome_incognito.cmd\" -- \"%1\"
[HKEY_CLASSES_ROOT\htmlfile\shell\open\command]
@="\"V:\\Tools\\start_chrome_incognito.cmd\""
[HKEY_CLASSES_ROOT\htmlfile\shell\opennew\command]
@="\"V:\\Tools\\start_chrome_incognito.cmd\""
Save this as chrome_file_association_fix.reg
and run it.
You cannot add the switches (-incognito
) directly to the registry key. This would be more convenient since it wouldn’t require a separate batch file to maintain, but this breaks the host process that attempts to start the application.
Create a start_chrome_incognito.cmd
in your C:\Tools
folder and put this into it:
@echo off
start /D"%LocalAppData%\Google\Chrome\Application" chrome.exe -incognito --purge-memory-button --memory-model=low %*
:: for XP use the following
:: start /D"%AppData%\Google\Chrome\Application" chrome.exe -incognito --purge-memory-button --memory-model=low %*
Add whatever options you want before %*
and you should be good to go.
Now, when you start Chrome using something like Start > Run > https://www.google.com
you will be browsing in Incognito mode.
Hacky but it works.
Google, please add an option to do this natively thanks.