SessionNotCreatedException: This version of ChromeDriver only supports Chrome version 114
Fixes the ChromeDriver/Chrome version mismatch in undetected-chromedriver. Use when session creation fails saying ChromeDriver only supports a different Chrome version than the one installed. Not for missing Chrome binary.
undetected-chromedriver auto-downloaded a ChromeDriver that does not match your installed Chrome major version. Pass your Chrome's major version explicitly: uc.Chrome(version_main=114) (replace 114 with yours, from Chrome menu -> Help -> About Google Chrome). It then downloads the matching driver and the session starts.
The error
SessionNotCreatedException: This version of ChromeDriver only supports Chrome version 114Fix it
- Find your installed Chrome's major version
Open Chrome menu -> Help -> About Google Chrome, or run:
google-chrome --versionExpected: something like Google Chrome 138.0.7204.101. The major version is 138.
- Pin the driver to it
import undetected_chromedriver as uc
driver = uc.Chrome(version_main=138) # your major version from step 1Expected: the session starts with no SessionNotCreatedException.
- Alternative: update Chrome itself
If you would rather move Chrome forward than pin the driver, update Chrome to the latest and call uc.Chrome() with no arguments. Expected: auto-downloaded driver and fresh Chrome agree.
When this applies
- the error names two different Chrome versions (supported vs current)
- Chrome auto-updated overnight and the scraper broke
- undetected-chromedriver downloaded the driver itself (you never placed one manually)
When it does NOT apply
cannot find Chrome binarymeans Chrome is not installed at all'chromedriver' executable needs to be in PATHis plain selenium without undetected-chromedriver
Compatibility
undetected-chromedriver 3.x with any Chrome. The version_main parameter exists across 3.x releases.
Variant phrasings
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version N
The same mismatch as wrapped by newer selenium. Same fix.
Why it happens
Chrome and ChromeDriver must share a major version. undetected-chromedriver downloads whatever driver is current at first run and caches it; when Chrome later updates (or the cache was built for a different Chrome), the cached driver refuses the session. version_main forces a download matching the Chrome you actually have.
Edge cases
- The driver cache lives in a user folder. Deleting the cached driver and re-running also forces a fresh download, but
version_mainis the deterministic fix. - In CI, pin both: install a fixed Chrome version AND pass the same version_main, so neither side drifts.
- Brave and other Chromium forks report their own versions. Use the fork's major version the same way.
Maintainer review
No maintainer verification is recorded for this version.
This records the version a maintainer checked. It does not assert that the version is the latest upstream release.