The Apple AWDL Bug That Ruins Cloud Gaming on Mac
We recently bought a Mac Mini M4. Around the same time, Google Fiber upgraded our setup from the older Nest router to the new Wi‑Fi 7 router.
Instead of getting better, it got dramatically worse!
Boosteroid (a cloud gaming app) became borderline unusable over Wi‑Fi, with latency spiking into the 100–300 ms range in a very regular pattern.
The weird part was that everything else looked normal: speed tests were fine, Wi‑Fi was fine, but inside Boosteroid the stream kept hitching, freezing, and stuttering hard enough to make gaming miserable.
After a lot of digging, the actual culprit turned out to be AWDL — not Boosteroid itself.
What AWDL Is
AWDL stands for Apple Wireless Direct Link. It powers nearby Apple features like AirDrop, Handoff, AirPlay, and other continuity features.
The likely reason it causes these spikes is that your Mac has one Wi‑Fi radio, and AWDL makes it periodically hop off your normal Wi‑Fi channel onto Apple’s peer-to-peer channel to listen for or talk to nearby devices. While that is happening, normal traffic can get delayed because the radio is briefly busy elsewhere.
That is why the pattern is so odd: the connection can look fine overall, but real-time traffic like cloud gaming, voice chat, or remote desktop gets hit by regular bursts of latency, jitter, packet delay, and short freezes.
The usual workaround is to disable the awdl0 interface while gaming. The problem is that macOS can turn it back on by itself after a while, so disabling it once is often not enough. And you probably do not want it permanently off anyway, because it can interfere with useful Apple features.
This is a long-standing macOS bug. There is no proper fix, only workarounds like temporarily disabling AWDL while you play — so here we are…
The Fix We Used
I started from this Reddit post:
Stuttering issues with GeForce NOW on MacOS over WiFi solved with this simple script
And then I adapted it for Boosteroid and made it a bit better and cleaner for this use case.
The original script keeps AWDL disabled while GeForce NOW is open. What I changed was adapting it for Boosteroid, adding AWDL restoring on quit, and making the script close itself when Boosteroid exits.
So it works as a small Boosteroid launcher with a watchdog, not just a one-off toggle. What it basically does:
- disables
awdl0 - launches Boosteroid
- keeps checking whether macOS silently turned
awdl0back on - disables it again if needed
- restores
awdl0when Boosteroid closes
Step 1: Add the Sudoers Rule or the Script Will Not Work
This part is required. The script uses sudo -n, which means it cannot stop and ask for your password. Without this rule, it just fails.
We are allowing only these two exact commands without a password, nothing else.
Get Vit Gordon’s stories in your inbox
Join Medium for free to get updates from this writer.
Edit sudoers safely with visudo. Open Terminal and run:
EDITOR=nano sudo visudoEnter your password when asked. Then find this section:
# root and users in group wheel can run anything on any machine as any user
root ALL = (ALL) ALL
%admin ALL = (ALL) ALLAdd the new line directly after that block, not before it. Paste this, replacing <your-user-name> with your actual macOS username:
<your-user-name> ALL=(root) NOPASSWD: /sbin/ifconfig awdl0 down, /sbin/ifconfig awdl0 upHow to Save and Exit Nano
- Press Control + O to write the file
- Press Enter to confirm
- Press Control + X to exit
Step 2: Create the Boosteroid Launcher Script
Open Script Editor via Spotlight, create a new script, and paste this in:
property shouldMonitor : false
property isShuttingDown : false
property awdlWasDisabled : false
on set_awdl0(state)
try
do shell script "sudo -n /sbin/ifconfig awdl0 " & state
return true
on error errMsg
if not isShuttingDown then
display notification ("Failed to set awdl0 " & state & ": " & errMsg) with title "Boosteroid"
end if
return false
end try
end set_awdl0
on boosteroid_is_running()
try
do shell script "/usr/bin/pgrep -x Boosteroid >/dev/null"
return true
on error
return false
end try
end boosteroid_is_running
on awdl0_is_active()
try
set awdl0Status to do shell script "/sbin/ifconfig awdl0"
return awdl0Status contains "status: active"
on error
return false
end try
end awdl0_is_active
on begin_shutdown()
set isShuttingDown to true
set shouldMonitor to false
quit
end begin_shutdown
on run
if set_awdl0("down") then
set awdlWasDisabled to true
set shouldMonitor to true
display notification "awdl0 is now disabled." with title "Boosteroid"
tell application "Boosteroid"
activate
end tell
else
display notification "Could not disable awdl0." with title "Boosteroid"
set isShuttingDown to true
quit
end if
end run
on idle
if isShuttingDown then return 60
if not shouldMonitor then return 1
if not boosteroid_is_running() then
begin_shutdown()
return 60
end if
if awdl0_is_active() then
if set_awdl0("down") then
display notification "awdl0 was re-enabled. Disabling again..." with title "Boosteroid"
end if
end if
return 1
end idle
on quit
set isShuttingDown to true
set shouldMonitor to false
if awdlWasDisabled then
set_awdl0("up")
set awdlWasDisabled to false
end if
continue quit
end quitStep 3: Save It as an App
In Script Editor:
- click File → Export
- name it something like Boosteroid Without AWDL
- set File Format to Application
- enable Stay open after run handler
- save it to your Applications folder
After that, launch that app whenever you want to use Boosteroid.
What Changed for Us
In our case, the difference was immediate. The regular latency spikes were gone, and Boosteroid finally became usable again over Wi‑Fi!
It is a ridiculous fix, but it works.
The Bigger Point
Boosteroid and other cloud gaming apps should probably add this as a built-in option on macOS until Apple fixes the underlying problem.
Most people are not going to edit sudoers or build a small launcher app just to get stable latency. A simple temporarily disable AWDL while streaming toggle would help a lot.
And this is also something they should keep escalating to Apple, because a background Apple wireless feature should not be able to wreck cloud gaming like this!







