How to Fix Screen Flickering in Google Chrome on Ubuntu 22.04

Screen flickering while using Google Chrome on Ubuntu 22.04 can be frustrating and negatively impact your workflow. I personally encountered this issue, and after hours of research and testing, I found several effective solutions. This guide will walk you through the steps to resolve this problem and ensure a smooth browsing experience.

Causes of Screen Flickering in Google Chrome on Ubuntu

This issue mainly affects systems using Intel GPUs, particularly when Chrome conflicts with the graphics driver. Some common causes include:

  • The xserver-xorg-video-intel driver causing display issues.
  • Conflicts between Chrome and the GPU when hardware acceleration is enabled.
  • Improper display configurations.

Below are three proven methods to fix this issue effectively.

Method 1: Remove the xserver-xorg-video-intel Driver

From my experience, one of the primary causes of this issue is the xserver-xorg-video-intel driver. This package was designed for older Intel chipsets (pre-2007) and is no longer optimal for modern Intel GPUs.

To check if your system is using this driver, run the following command in the Terminal:

dpkg -l | grep xserver-xorg-video-intel

If it is installed, remove it with:

sudo apt-get purge xserver-xorg-video-intel

Once the removal process is complete, restart or log out of your system to apply the changes.

📌 Note: After uninstalling this driver, the system will automatically use the modesetting driver, which is more stable for modern Intel GPUs.

Method 2: Modify Chrome’s Configuration to Prevent GPU Conflicts

If removing the driver does not resolve the issue, you can tweak Chrome’s launch settings to disable problematic GPU features.

Step 1: Edit the google-chrome.desktop File

Open a Terminal and edit Chrome’s startup configuration file:

sudo nano /usr/share/applications/google-chrome.desktop

Find the line starting with Exec= and replace it with:

Exec=/usr/bin/google-chrome-stable --disable-gpu-driver-bug-workarounds --enable-native-gpu-memory-buffers %U
Change google-chrome.desktop file
Change google-chrome.desktop file

Press Ctrl + X, then Y to save the changes.

Step 2: Reconfigure Intel Graphics

Next, create a new configuration file for Intel GPUs:

sudo nano /usr/share/X11/xorg.conf.d/20-intel.conf

Add the following content:

Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "AccelMethod"  "sna"
   Option      "TearFree"    "true"
   Option      "DRI"    "3"
EndSection

Press Ctrl + X, then Y to save the file.

Step 3: Adjust Chrome Flags Settings

Open Chrome and enter the following address:

chrome://flags/

Enable the following options to optimize GPU performance:

Zero-copy rasterizer: Enable
Override Software Rendering List: Enable
Display 2D List Canvas: Enable

Step 4: Enable Hardware Acceleration in Chrome

Go to Chrome Settings → Advanced Settings → System and enable the option Use hardware acceleration when available.

Finally, restart Chrome to apply the changes.

📌 Note: This method allows Chrome to handle GPU rendering more efficiently and reduces scrolling lag.

Method 3: Disable “Use Hardware Acceleration When Available”

If the previous two methods don’t work or you prefer a simpler solution, you can disable hardware acceleration in Chrome.

Step 1: Disable Hardware Acceleration

Go to Chrome Settings → Advanced Settings → System, then disable the option Use hardware acceleration when available.

Step 2: Enable Smooth Scrolling to Reduce Lag

Disabling hardware acceleration may slow down Chrome or cause screen tearing while scrolling. To mitigate this, enable Smooth Scrolling by entering the following address in Chrome:

chrome://flags/#smooth-scrolling

Then select Enable.

Enable Smooth Scrolling
Enable Smooth Scrolling

📌 Note: This method is easy to implement but may affect browser performance. If you use resource-intensive web applications, try Method 2 before deciding to disable hardware acceleration.

Method 4: Update the Driver compatible with CPU (Nvidia)

On some machines with NVIDIA graphics cards, screen flickering in Chrome when scrolling may be caused by incompatible drivers. Updating the driver can help optimize the NVIDIA card for better graphics performance, especially when running applications. See details in [Update NVIDIA Driver on Ubuntu].

Which Solution Works Best?

After testing various methods, I found that Methods 1 and 2 provide long-term stability and improve Chrome’s performance on Ubuntu. However, if you need a quick fix, Method 3 can help reduce flickering, although it may impact speed.

If you’ve tried these solutions and are still experiencing issues, check your Chrome version and update it to the latest release:

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

I hope this guide helps you resolve the issue! If you have any questions or additional insights, feel free to share them in the comments.

Write a comment