Stop macOS Sonoma External Monitor Flicker After Sleep

Monitor flickers after your Mac wakes from sleep? Here's a three-step fix, from a 30-second cable swap to a 15-minute firmware deep dive.

You close your MacBook lid. You come back an hour later. You tap a key, the screen wakes, and your external monitor starts strobing like a bad fluorescent light. Sometimes it flickers for a few seconds and settles. Sometimes it never settles, and you're stuck unplugging the display just to get work done.

This is a known headache on macOS Sonoma, especially on 14.0 through 14.3. The triggers vary — it shows up on M1 and M2 Macs hooked to Dell U2723QE panels, on Intel MacBook Pros driving LG UltraFine 5K displays, and on any setup using a USB-C hub with DisplayPort alt mode. The root causes are different depending on which stage the flicker happens, so the fix depends on what you're actually seeing.

Work through these in order. Stop when the flicker goes away. Don't jump to step 3 because you think your case is special — I've watched people waste an afternoon on EDID overrides when the real problem was a five-dollar cable.

Step 1: The 30-second fix (do this first, always)

Unplug the display cable from your Mac. Wait five seconds. Plug it back in. Then open System Settings > Displays and toggle the resolution down one notch and back up.

Here's why this works. Sonoma caches your display's timing information when it sleeps. If the cache gets stale — which happens a lot when the monitor sends a slightly different EDID handshake after resuming — the GPU keeps trying to drive a mode the panel no longer accepts. Toggling resolution forces macOS to renegotiate the handshake from scratch.

After you toggle back to your normal resolution, you should see the flicker stop within two seconds. If it doesn't, move to step 2.

One more thing before you leave this step: check the cable. Genuinely. USB-C cables shipped with cheap hubs are notorious for this. The Amazon Basics USB-C to DisplayPort cable and the no-name cables bundled with $30 dongles are the usual suspects. If you're using one of those, swap it for a Cable Matters or Belkin cable rated for your resolution and refresh rate. A cable that worked fine on Ventura can fail on Sonoma because Sonoma's display stack is more aggressive about link training.

Step 2: The 5-minute fix (reset the display subsystem)

If the cable swap didn't help, the problem is deeper than the handshake. You need to clear the display preference files macOS keeps in your user library. These get corrupted by Sonoma's sleep/wake cycle more often than Apple will admit.

  1. Shut down your Mac completely. Not restart — shut down. Wait for the screen to go fully black and the fans to stop.
  2. Disconnect the external monitor's power cable from the wall, not just the Mac. Leave it unplugged for 60 seconds. This forces the monitor's internal scaler to reset. Many LG and Dell panels hold onto the last timing mode in non-volatile memory, and a normal power cycle doesn't clear it.
  3. Boot your Mac holding Shift to enter Safe Mode. On Apple Silicon, you do this by holding the power button until you see "Loading startup options," then selecting your disk while holding Shift.
  4. Once Safe Mode loads, open Finder and press Cmd + Shift + G. Paste this path:
~/Library/Preferences/ByHost/

You'll see files starting with com.apple.windowserver followed by a long hex string and a .plist extension. There may be two or three of them. Drag them to the Trash. Don't just move them to a folder — trash them, then empty the Trash.

Also delete this one from your main Preferences folder, if it exists:

~/Library/Preferences/com.apple.windowserver.plist

Now restart normally. The window server will rebuild its display cache on first boot. Expect an extra 10–15 seconds of black screen during that first boot — that's normal, the system is regenerating every configuration file you just deleted.

Plug your monitor back in. If the flicker is gone at this point, you're done. If it comes back after the next sleep cycle, you've got a firmware-level issue and step 3 is where you need to go.

Step 3: The 15-minute fix (firmware, refresh rate, and EDID overrides)

By this point you've ruled out the easy stuff. What's left is almost always one of three things: monitor firmware that doesn't handle Sonoma's link training correctly, a refresh rate mismatch that only appears after wake, or an EDID handshake that Sonoma is misreading.

Sub-step A: Force a specific refresh rate

Sonoma tries to auto-negotiate refresh rate on wake, and it sometimes lands on 59.94 Hz instead of 60 Hz or vice versa. The panel accepts the mode, then drops frames, which looks exactly like flicker.

  1. Open System Settings > Displays.
  2. Click your external monitor so it's the selected display.
  3. Hold the Option key and click the "Refresh Rate" dropdown. This reveals hidden modes.
  4. Pick a fixed rate — 60 Hz if you're on a standard panel, 120 Hz or 144 Hz if it's a gaming monitor. Don't leave it on "Variable."

Then disable ProMotion and adaptive sync in the same menu if you see those options. They conflict with some external panels on Sonoma in ways Apple hasn't sorted out yet.

Sub-step B: Update monitor firmware

This is the one people skip, and it's the one that actually fixes the problem for a big chunk of users. Check your monitor manufacturer's support site:

  • LG UltraFine and UltraGear: use LG's OnScreen Control app or the firmware updater on their support page. The 27UP850 and 27UN850 both got firmware revisions in late 2023 that specifically patched Sonoma wake behavior.
  • Dell: the Dell Display Manager app prompts you for firmware updates. The U2723QE got a fix in firmware M3T104.
  • Samsung: the Odyssey and ViewFinity lines use a USB thumb drive updater. Grab it from the model's download page.

After the firmware flashes, the monitor will reboot itself. You should see the power LED cycle once. Reconnect it to your Mac and test a sleep/wake cycle three times in a row before declaring victory.

Sub-step C: EDID override (last resort)

If you've done everything above and the flicker persists, the panel is reporting a malformed EDID block that Sonoma can't parse. You can override it, but it's fiddly and it can break your display entirely if you get it wrong.

  1. Install BetterDisplay from GitHub. It's free and open-source and gives you EDID dump and override tools without touching system files.
  2. Open BetterDisplay, select your external monitor, and click "Dump EDID" from the app menu. Save the file somewhere you'll remember.
  3. Open the dump in a hex editor. You're looking for the detailed timing descriptor block — it starts around byte 54. If the pixel clock value looks wrong for your resolution, that's your culprit.
  4. BetterDisplay has an "Override EDID" option. Load your corrected file and apply it. The display will go black for a few seconds, then come back.

If the screen doesn't come back after 30 seconds, unplug the monitor and hold Cmd + R during reboot to reach Recovery, then reinstall macOS over the top. It's annoying, but it's recoverable.

Honest take: if you've reached sub-step C and it still flickers, the monitor and Sonoma just don't get along. Return the monitor if you can, or wait for Apple to ship a fix. I've seen three cases where nothing worked except swapping the panel for a different model entirely.

What to try if none of this helps

File a bug with Apple using Feedback Assistant. Include your Mac model, macOS build number (check in System Settings > General > About), monitor make and model, connection type, and the exact sequence that triggers the flicker. Apple engineering actually reads these when the volume of reports gets high enough.

In the meantime, workarounds that reduce the frequency: disable "Wake for network access" in System Settings > Energy, and set your display to never sleep when plugged in. It's a battery hit on laptops but it stops the wake cycle that triggers the bug.

Related Errors in macOS Errors
Safari stuck in redirect loop on Mac? Here's the fix macOS Safari Redirect Loop: Fix in 3 Steps null macOS 'The operation can’t be completed' error when copying files Fix com.apple.launchd.peruser Crash Loop on macOS

Was this solution helpful?

EP
Erropedia Team
Tech Support Editors
The Erropedia editorial team researches and documents real-world tech errors from across Windows, Linux, macOS, networking, databases, cloud platforms, and more. Every solution is reviewed for accuracy and updated as software and systems evolve.