How to Install Google Chrome on Ubuntu (26.04, 24.04, 22.04)

Google Chrome on Ubuntu gives you access to Google’s Chromium-based browser with native sync for bookmarks, passwords, and browsing history across devices. Whether you need Chrome for web development testing, accessing Google Workspace apps, or sites that work best with Chrome’s rendering engine, this guide configures Google’s official APT repository so your browser receives automatic security updates alongside your system packages.

By the end of this guide, you will have Google Chrome installed from Google’s official repository using the modern DEB822 format, with the GPG key properly configured and your choice of stable, beta, unstable, or canary builds available.

Prepare Your System

Before adding Google’s repository, refresh your package list and install the tools needed to download and verify packages over HTTPS.

Update Package Lists

Refresh your system’s package index to ensure you install the latest versions of any prerequisites:

sudo apt update

Install Required Packages

Install the packages needed for secure downloads and GPG key management:

sudo apt install ca-certificates curl -y

This command installs certificate handling for HTTPS connections and the curl utility for downloading files. Ubuntu includes the gpg command by default for GPG key operations.

Chrome Release Channels

Google publishes Chrome through four release channels, each targeting different use cases. All channels are available from the same repository, so you can install multiple versions side-by-side for different purposes.

ChannelPackage NameStabilityBest For
Stablegoogle-chrome-stableHighDaily browsing, production use
Betagoogle-chrome-betaModeratePreview features 4-6 weeks before stable
Unstable (Dev)google-chrome-unstableLowEarly development testing
Canarygoogle-chrome-canaryVery LowExperimental builds updated daily

Most users should install the stable channel. The beta, unstable, and canary channels receive updates more frequently and may contain bugs that make them unsuitable for daily use.

Import Google’s Repository Signing Key

APT requires a GPG key to verify the authenticity of packages downloaded from external repositories. Download Google’s public signing key, convert it to binary format, and store it in the system keyring directory:

curl -fsSL https://dl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor -o /usr/share/keyrings/google-chrome.gpg

This single command downloads the key, converts it from ASCII-armored format to binary, and writes it directly to /usr/share/keyrings/ with the correct ownership. Your system can now verify packages signed by Google during installation and updates.

Add the Google Chrome Repository

Create a repository configuration file using the modern DEB822 format, which is clearer and more maintainable than the legacy one-line format:

cat <<EOF | sudo tee /etc/apt/sources.list.d/google-chrome.sources
Types: deb
URIs: https://dl.google.com/linux/chrome/deb/
Suites: stable
Components: main
Architectures: amd64
Signed-By: /usr/share/keyrings/google-chrome.gpg
EOF

Each line in this configuration serves a specific purpose:

  • Types: deb specifies binary packages (not source packages)
  • URIs points to Google’s package server
  • Suites: stable is the repository branch (despite the name, all four Chrome channels are available from this branch)
  • Architectures: amd64 limits packages to 64-bit (Google does not publish 32-bit Chrome packages)
  • Signed-By links to the GPG key you imported earlier

The Google Chrome repository uses a universal package format that works on all current Ubuntu releases, including 22.04 LTS, 24.04 LTS, 26.04 LTS, and interim versions. Commands shown in this guide work identically regardless of your specific Ubuntu version.

Verify the Repository Configuration

Refresh your package lists to include the new repository:

sudo apt update

Confirm the repository is working by checking the package sources:

apt-cache policy google-chrome-stable

The output should show Google’s repository as the package source:

google-chrome-stable:
  Installed: (none)
  Candidate: 143.0.7499.192-1
  Version table:
     143.0.7499.192-1 500
        500 https://dl.google.com/linux/chrome/deb stable/main amd64 Packages

If you see the https://dl.google.com URL in the output, the repository is configured correctly. The version number will differ as Google releases updates.

Install Google Chrome

With the repository configured, install your preferred Chrome channel using APT.

Install Chrome Stable

The stable version receives updates after thorough testing by Google’s quality assurance teams, making it the safest choice for daily browsing:

sudo apt install google-chrome-stable

Verify the installation by checking the version:

google-chrome --version
Google Chrome 143.0.7499.192

Your version number will reflect the latest stable release at installation time. Chrome updates automatically through the repository, so the version may change after system updates.

Install Beta, Unstable, or Canary Builds

For early access to experimental features, install an alternate channel. Each channel installs as a separate application, so you can run multiple versions simultaneously:

Install the beta version (one to two major versions ahead of stable):

sudo apt install google-chrome-beta

Install the unstable (dev) version for active development testing:

sudo apt install google-chrome-unstable

Install the canary version for the absolute latest experimental builds:

sudo apt install google-chrome-canary

Verify your chosen channel with its specific version command:

google-chrome-beta --version
google-chrome-unstable --version
google-chrome-canary --version

The unstable and canary channels may contain bugs and stability issues unsuitable for production environments. Use the stable channel for daily browsing and reserve these channels for testing new features or web development.

Launch Google Chrome

Launch from Terminal

Each Chrome channel has its own command. Launch the stable version:

google-chrome

Launch the beta version:

google-chrome-beta

Launch the unstable version:

google-chrome-unstable

Launch the canary version:

google-chrome-canary

Launch from Applications Menu

Open Chrome through the graphical interface:

  1. Click Activities in the top-left corner of your screen (or press the Super key).
  2. Type “Chrome” in the search field.
  3. Click the Google Chrome icon to launch. If you have multiple versions installed, they appear as separate entries: Google Chrome, Google Chrome (Beta), Google Chrome (Unstable), and Google Chrome (Canary).
Google Chrome welcome screen after first launch on Ubuntu showing new tab page with search bar and Google Doodle logo
Google Chrome welcome screen on Ubuntu showing the new tab page with search bar and Google services.

First Launch Configuration

When you open Google Chrome for the first time on Ubuntu, several prompts help configure the browser for your preferences. These setup steps are optional but personalize your browsing experience.

Keychain Password Prompt

Ubuntu may prompt you to set up or unlock a keychain password. The keychain stores passwords for websites and applications securely. Enter your user password or create a new keychain password, or click Cancel to skip keychain integration.

Set Chrome as Default Browser

Chrome will ask whether you want to make it the default browser. Click “Set as Default” to replace your current default (usually Firefox on Ubuntu), or close the prompt to keep your existing default.

Usage Statistics and Crash Reports

Chrome displays an option to send usage statistics and crash reports to Google, which helps improve the browser. Select or deselect the checkbox based on your privacy preferences.

Sign In with Google Account

Chrome allows you to sign in with your Google account to sync bookmarks, history, passwords, and settings across devices. This is optional, and you can skip it by clicking the X in the sign-in tab or selecting “Continue without account.”

Update and Remove Chrome

Keep Chrome Updated

The APT repository you configured delivers Chrome updates automatically alongside your system packages. Refresh your package lists and upgrade all packages:

sudo apt update
sudo apt upgrade

To update only Chrome without upgrading other packages, use the --only-upgrade flag with the specific package name:

sudo apt install --only-upgrade google-chrome-stable

Replace google-chrome-stable with google-chrome-beta, google-chrome-unstable, or google-chrome-canary to update a different channel.

Uninstall Google Chrome

If you no longer need Google Chrome, remove it along with its repository configuration.

Remove Chrome Packages

Use the appropriate command based on the channel you installed:

sudo apt purge google-chrome-stable

For other channels:

sudo apt purge google-chrome-beta
sudo apt purge google-chrome-unstable
sudo apt purge google-chrome-canary

Remove unused dependencies Chrome installed:

sudo apt autoremove --purge

Remove Repository and GPG Key

Delete the repository configuration file and GPG key to prevent APT from checking for Chrome updates:

sudo rm -f /etc/apt/sources.list.d/google-chrome.sources
sudo rm -f /etc/apt/sources.list.d/google-chrome.list
sudo rm -f /usr/share/keyrings/google-chrome.gpg

The second line removes a legacy .list file that Chrome’s installer may have created. Refresh your package lists:

sudo apt update

Verify the repository is no longer active:

apt-cache policy google-chrome-stable
N: Unable to locate package google-chrome-stable

This output confirms the package is no longer available from any repository.

Remove User Data (Optional)

The following commands permanently delete your Chrome profile data, including bookmarks, saved passwords, extensions, and browsing history. Back up these directories first if you want to preserve this data for a future Chrome reinstallation.

Remove all Chrome configuration and cache files from your home directory:

rm -rf ~/.config/google-chrome*
rm -rf ~/.cache/google-chrome*
rm -rf ~/.local/share/applications/google-chrome*.desktop

After running these commands, Google Chrome is fully removed with no residual configuration or cache files.

Troubleshoot Common Chrome Issues

Fix Duplicate Repository Warnings

Google’s Chrome installer sometimes creates a legacy google-chrome.list file during package installation, even when you have already configured the modern .sources format. This causes duplicate repository warnings during apt update:

W: Target Packages (main/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/google-chrome.list:1 and /etc/apt/sources.list.d/google-chrome.sources:1

Remove the duplicate file to resolve the warning:

sudo rm -f /etc/apt/sources.list.d/google-chrome*.list
sudo apt update

The .list files do not reappear during Chrome updates because Google’s installer creates them only on first install. A complete reinstallation would recreate them, requiring you to remove them again.

Chrome Fails to Start with GPU Errors

Chrome may fail to start on systems with certain GPU configurations or when running in virtual machines. Launch Chrome with GPU sandboxing disabled to diagnose the issue:

google-chrome --disable-gpu-sandbox

If Chrome starts successfully with this flag, the issue is GPU-related. You can also disable GPU acceleration entirely:

google-chrome --disable-gpu

For a permanent fix, check Chrome’s GPU status by navigating to chrome://gpu in the address bar. This page shows which GPU features are enabled or disabled and any blocklist reasons.

Chrome Crashes on Wayland Sessions

Ubuntu 24.04 and newer default to Wayland sessions. If Chrome crashes or displays rendering issues, force Chrome to run in X11 mode:

google-chrome --ozone-platform=x11

For better performance on modern hardware, force native Wayland mode instead:

google-chrome --ozone-platform=wayland

To make this setting permanent, edit Chrome’s desktop file or create a persistent launch configuration.

Missing Fonts or Emoji Display Issues

If web pages display placeholder boxes instead of characters or emoji, install additional font packages:

sudo apt install fonts-noto-color-emoji fonts-noto fonts-liberation

Restart Chrome after installing the fonts for changes to take effect.

Chrome Profile Locked Error

If Chrome reports “Your profile could not be opened correctly” or displays a lock error, a previous Chrome process may have exited uncleanly. Remove the lock file:

rm ~/.config/google-chrome/SingletonLock

Restart Chrome after removing the lock file.

Additional Resources

These official resources provide additional information for managing and troubleshooting Chrome:

Conclusion

Google Chrome is now configured on your Ubuntu system with automatic updates through Google’s official APT repository. The installation uses modern DEB822 repository format with proper GPG key management, ensuring secure package verification for all future updates.

To explore other browsers, consider installing Chromium on Ubuntu as an open-source alternative, or try Brave Browser on Ubuntu for privacy-focused browsing with the same Chromium engine. For extensive customization options, Vivaldi on Ubuntu offers unique features, while Firefox ESR on Ubuntu provides a stable alternative with an independent rendering engine.

9 thoughts on “How to Install Google Chrome on Ubuntu (26.04, 24.04, 22.04)”

  1. I did this installation and everything worked without any error messages until the last command to get Google Chrome. Ubuntu looks great and will replace Windows. But I absolutely need the JW app from Google Chrome. I downloaded the APK from jw.org, but Ubuntu didn’t accept it and told me to get the DEB file. Please have some patience with me — I’m 79 years old and technology has always been my life. Years ago, I helped many friends switch from Windows 7 to 10. Now I’m thinking about moving many PCs to Linux. There are many people on this Earth with older PCs who can’t always afford the latest, so Linux would be better — and this can also be promoted. I look forward to the day when this works! Thank you for your understanding,
    Michel

    Reply
  2. Thanks! I was getting this error when doing “sudo apt update”:

    “The following signatures could not be verified because the public key is not available: NO_PUBKEY 32EE5355A6BC6E42
    Failed to fetch http://dl.google.com/linux/chrome/deb/dists/stable/InRelease The following signatures could not be verified because the public key is not available: NO_PUBKEY 32EE5355A6BC6E42”

    I had to do this before I was able to install Chrome again using the apt method outlined above.
    sudo rm /etc/apt/sources.list.d/google.list*
    Before that I had also deleted the chrome keys.

    Reply
    • Thanks for sharing this, Ben. The NO_PUBKEY error indicates APT cannot verify the repository signature because the GPG key is missing or incorrectly configured. Your solution of removing the old repository files and keys, then re-importing fresh copies, is exactly the right approach.

      For others encountering this issue, follow the Import Google Chrome APT Repository section from the beginning. First, import the GPG key:

      curl -fSsL https://dl.google.com/linux/linux_signing_key.pub | gpg --dearmor | sudo tee /usr/share/keyrings/google-chrome.gpg > /dev/null

      Then add the repository with the correct keyring reference:

      echo deb [arch=amd64 signed-by=/usr/share/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/ stable main | sudo tee /etc/apt/sources.list.d/google-chrome.list

      This ensures APT can verify Google’s repository signatures and prevents the NO_PUBKEY error from recurring.

      Reply
  3. Trying to install Chrome on a fresh Ubuntu-Unity 24.04.1 machine and while following the instructions for apt I keep getting this response, and I’m unable to install chrome.

    $ sudo apt update
    Hit:1 http://security.ubuntu.com/ubuntu noble-security InRelease
    Ign:2 http://dl.google.com/linux/chrome/dev stable InRelease
    Hit:3 http://archive.ubuntu.com/ubuntu noble InRelease
    Hit:4 http://archive.ubuntu.com/ubuntu noble-updates InRelease
    Hit:5 http://archive.ubuntu.com/ubuntu noble-backports InRelease
    Err:6 http://dl.google.com/linux/chrome/dev stable Release
    404 Not Found [IP: 172.217.169.46 80]
    Reading package lists… Done
    E: The repository ‘http://dl.google.com/linux/chrome/dev stable Release’ does not have a Release file.
    N: Updating from such a repository can’t be done securely, and is therefore disabled by default.
    N: See apt-secure(8) manpage for repository creation and user configuration details.

    The IP address changes occasionally, which I assume is just different mirrors.

    Any suggestions or obvious fixes?

    Reply
    • Thanks for reporting this. The 404 error shows your repository configuration points to http://dl.google.com/linux/chrome/dev instead of the correct path http://dl.google.com/linux/chrome/deb/. Notice the difference: chrome/dev (incorrect) versus chrome/deb/ (correct).

      Remove the incorrect repository file:

      sudo rm /etc/apt/sources.list.d/google-chrome.list

      Then re-add the repository using the correct URL from the Import Google Chrome APT Repository section:

      echo deb [arch=amd64 signed-by=/usr/share/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/ stable main | sudo tee /etc/apt/sources.list.d/google-chrome.list

      Update your package lists and Chrome should install successfully:

      sudo apt update && sudo apt install google-chrome-stable

      Reply
    • Hi Arnfinn,

      Actually, maybe just run the ping command like:

      ping dl.google.com

      Also, you did install the initially required packages?

      sudo apt install curl software-properties-common apt-transport-https ca-certificates -y

      Re-tested using a VPN connection, works fine, it will be something minor i suspect.

      Hope it works out.

      Reply
  4. Trying now and get:
    curl -fSsL https://dl.google.com/linux/linux_signing_key.pub | gpg –dearmor | sudo tee /usr/share/keyrings/google-chrome.gpg > /dev/null
    curl: (6) Could not resolve host: dl.google.com
    gpg: no valid OpenPGP data found.

    Reply
    • Thanks for reporting this. The curl: (6) Could not resolve host error indicates your system cannot resolve dl.google.com through DNS. The GPG error follows because curl received no data to process.

      First, verify your network connection works and test DNS resolution with nslookup:

      ping -c 4 8.8.8.8

      nslookup dl.google.com

      If nslookup fails, your DNS configuration needs attention. Check /etc/resolv.conf for valid nameservers or temporarily switch to Google’s DNS (8.8.8.8) in your network settings. If you’re behind a corporate firewall or proxy, configure curl to use your proxy with the -x flag or set the http_proxy environment variable.

      Once DNS resolution works, retry the curl command from the guide. Let me know the nslookup output if the issue persists.

      Reply

Leave a Comment

Let us know you are human: