4kScale — Smart UI Scaling for WoW
Finally, a UI scale addon that actually understands your monitor.
If you've ever played World of Warcraft on a 4K monitor, a MacBook Retina display, or an ultrawide screen, you know the pain: Blizzard's built-in UI scale slider maxes out around 0.64, wasting huge amounts of screen space. Manually setting scale via CVars causes taint and breaks secure frames like action bars and quest dialogs. 4kScale solves all of this — cleanly, safely, and beautifully.
## Why 4kScale?
Most UI scale addons just give you a slider and leave you guessing. 4kScale is different:
- It knows your monitor. Plug in your MacBook Pro 14"? It suggests 0.60. Dock to a 32" 4K? It switches to 0.53. No guessing, no Googling "best WoW scale for 4K."
- It's taint-safe. Never touches
SetCVar("uiScale"). Uses only UIParent:SetScale() with deferred execution to avoid taint entirely.
- It remembers per resolution. Switch between laptop and desktop? Each gets its own saved scale. Automatically.
- It looks premium. Custom-designed UI with toggle switches, visual scale bar, and a clean cyan accent theme. Not another tooltip-style settings box.
## Features
Smart Display Detection
4kScale detects your screen resolution and identifies your display type. It then recommends an optimal scale that balances pixel density with readability — not just raw pixel-perfect math, but a value that's actually comfortable to read on your specific screen size.
| Display |
Resolution |
Suggested Scale |
| MacBook Air 13" |
2560x1664 |
0.64 |
| MacBook Pro 14" |
3024x1964 |
0.60 |
| MacBook Pro 16" |
3456x2234 |
0.55 |
| 24" 4K Monitor |
3840x2160 |
0.64 |
| 27" 4K Monitor |
3840x2160 |
0.58 |
| 32" 4K Monitor |
3840x2160 |
0.53 |
| 40"+ 4K Monitor |
3840x2160 |
0.45 |
| 34" Ultrawide |
3440x1440 |
0.71 |
| 38" Ultrawide |
3840x1600 |
0.60 |
| 27" 1440p |
2560x1440 |
0.85 |
The Suggested button on the panel shows your detected display and applies the recommended scale with one click.
Monitor Profiles Dropdown
Don't see your exact monitor in the auto-detection? Open the Profiles dropdown to choose from a curated list of common display configurations — MacBook models, 4K monitors from 24" to 40"+, ultrawides, and more. Each profile applies a tested, community-validated scale value.
### Quick Presets
Five one-click presets for fast switching:
- Compact (0.40) — Maximum screen real estate, for players who want to see everything
- Small (0.45) — Great for large 4K monitors at desk distance
- Medium (0.64) — Balanced for most 4K and Retina displays
- Large (0.80) — Comfortable for 1440p or players who prefer larger UI
- Default (1.00) — Blizzard's standard scale
### Per-Resolution Profiles
Your preferred scale is saved per resolution. This means:
- Undock your MacBook from a 4K monitor → your laptop scale loads automatically
- Plug back in → your desktop scale restores
- Switch between windowed and fullscreen at different resolutions → each gets its own scale
No manual switching. It just works.
### Auto-Apply on Login
Enable Auto-apply and 4kScale sets your saved scale every time you log in, enter a world, or change display settings. Set it once, forget about it forever.
### Resolution Change Detection
When your resolution changes (plugging in a monitor, switching display modes), 4kScale detects it and either applies your saved profile or notifies you with a recommendation if it's a new resolution.
### Taint-Safe & Combat-Safe
This is not just a wrapper around SetCVar. 4kScale uses a carefully designed approach:
- Only
UIParent:SetScale() — no CVar manipulation, no taint
- Deferred execution via
C_Timer.After(0) — breaks any call chain that could spread taint
- Combat lockdown protection — scale changes are queued during combat and applied when combat ends
- Edit Mode awareness — won't interfere with WoW's Edit Mode
Your action bars, quest frames, and secure UI elements remain fully functional at all times.
### Full Slash Command Control
Everything can be done from the chat box:
| Command |
What it does |
/4kuhd |
Open the settings panel |
/4kuhd 0.45 |
Set scale to exactly 0.45 and save it |
/4kuhd auto |
Apply the recommended scale for your display |
/4kuhd reset |
Reset scale back to 1.0 (Blizzard default) |
/4kuhd info |
Print your resolution, current scale, recommendation, and saved value |
/4kuhd minimap |
Show the minimap button |
/4kuhd minimap hide |
Hide the minimap button |
You can also use /4kscale as an alias.
### Custom Minimap Button
A draggable minimap button gives you quick access:
- Left-click — Open the full settings panel
- Right-click — Quick popup to type a scale value or apply the recommended one
- Drag — Reposition the button around the minimap
- Hover — Tooltip showing your resolution, current scale, pixel-perfect value, and saved scale
The minimap button can be hidden via the settings panel or /4kuhd minimap hide.
### Addon Compartment Integration
4kScale registers with WoW's Addon Compartment (the addon menu button on the minimap). Left-click opens settings, right-click applies the recommended scale.
## Premium UI Design
4kScale doesn't look like every other addon. The settings panel features:
- Dark theme with cyan accent colors and a distinctive left stripe
- Custom toggle switches instead of default checkboxes — slide on/off with visual feedback
- Visual scale bar — a sleek 5px cyan progress indicator instead of the standard WoW slider
- Large readout showing your exact scale value in cyan
- Section dividers with labeled categories (Resolution, UI Scale, Presets)
- Color-coded action buttons — cyan for Apply, green for Suggested/Profiles, red for Reset
- Click feedback — buttons flash green on successful apply
- ESC to close — panel is registered with WoW's special frames system
## How It Works (Technical)
WoW's UI reference height is 768 pixels. The mathematically pixel-perfect scale for any resolution is 768 / screen_height. For example:
- 1080p: 768/1080 = 0.711
- 1440p: 768/1440 = 0.533
- 2160p (4K): 768/2160 = 0.356
However, pixel-perfect values are often too small for comfortable reading, especially on physically small screens like laptops. 4kScale uses a smart recommendation engine that factors in both resolution and typical physical screen size to suggest a comfortable, readable scale.
Scale is applied through UIParent:SetScale(), which uniformly scales all standard UI frames. This is the same method Blizzard's own UI uses internally, but without the taint that comes from SetCVar("uiScale").
## Installation
- Download the latest release
- Extract the
4kScale folder into your World of Warcraft/_retail_/Interface/AddOns/ directory
- Restart WoW or type
/reload
- The minimap button appears automatically — click it or type
/4kuhd
- Click Suggested to auto-detect your display and apply the optimal scale, or choose from Profiles
## FAQ
Q: Will this break my action bars or cause taint errors?
A: No. 4kScale never uses SetCVar("uiScale") which is the main cause of taint. It only uses UIParent:SetScale() which is safe.
Q: Can I use this with other UI addons (ElvUI, Bartender, etc.)?
A: Yes. 4kScale changes the base UIParent scale, which all addons inherit from. Most addons work fine with it. If an addon has its own scale setting, you may want to set that to 1.0 and let 4kScale handle the global scale.
Q: What happens if I set the scale too low and can't read anything?
A: Type /4kuhd reset in chat to restore scale to 1.0. You can also type /4kuhd 0.64 or any specific value.
Q: Does it work on Mac?
A: Yes! It was specifically designed with MacBook Retina displays in mind. It auto-detects MacBook Air 13", MacBook Pro 14", and MacBook Pro 16".
Q: Does it work in combat?
A: Scale changes are deferred until combat ends. Your current scale stays active during combat — no flickering, no secure frame errors.
Q: I switch between my laptop and a desktop monitor. Do I need to change settings each time?
A: No. 4kScale saves a separate scale for each resolution. When you switch monitors, it automatically applies the correct saved scale.
## Feedback & Support
Found a bug or have a feature request? Open an issue on GitHub.