Introduction
In my previous post, I shared a PowerShell template for managing registry settings via Microsoft Intune Remediations. The script handles both HKCU and HKLM, supports all registry types, and works on Microsoft Entra ID and hybrid joined devices.
But what’s a good template without a real-world example?
If you manage Windows devices, you’ve probably had this request:
- “Can we standardize the email font across the company?”
- “Everyone uses different fonts and sizes – it looks unprofessional”
- “New employees should start with the correct font settings”
Default fonts in Outlook are stored in the registry as binary values – not exactly something you can deploy with a settings catalog policy. Microsoft Intune doesn’t provide a native way to configure this.
This post shows how to solve that problem using the registry management template. The configuration:
- Sets default fonts for composing, replying, and plain text emails
- Applies to all user profiles on the device
- Deploys via Intune Remediations
Important: This only works for Outlook (classic) – the desktop app from Microsoft 365 Apps. The new Outlook for Windows stores settings in the cloud and cannot be configured via registry.
PowerShell
The script is available on GitHub: Intune-Registry-Management
Download Detect-Remediate-Registry-Outlook-Fonts.ps1 – it’s a pre-configured version of the registry management template with Outlook font settings ready to go.
The configuration
The script sets Verdana 10pt as the default font for all three Outlook font categories:
Understanding the binary values
Those hex strings look intimidating, but they’re just encoded font settings. The ComposeFontComplex value contains HTML/CSS styling, while ComposeFontSimple contains a binary structure with font name, size, and color.
To customize for a different font:
- Open Outlook (classic) on a test machine
- Go to File -> Options -> Mail -> Stationery and Fonts
- Set your preferred fonts
- Open
regeditand navigate toHKCU\SOFTWARE\Microsoft\Office\16.0\Common\MailSettings - Compare your values with the ones in the script
- Copy the binary data and format it as comma-separated hex (e.g.,
3c,00,00,00,...)
Or just use the script as-is for Verdana 10pt – a clean, readable font that works well in business emails.
Deploying to Intune
In the Microsoft Intune admin center, navigate to Devices -> Scripts and remediations -> Remediations.
Click Create and give your remediation a name. I use Detect-Remediate-Default-Outlook-Fonts.
Upload your two scripts:
- Detection script –
Detect-Remediate-Registry-Outlook-Fonts-1.ps1(with$runRemediation = $false) - Remediation script –
Detect-Remediate-Registry-Outlook-Fonts-2.ps1(with$runRemediation = $true)
Under Settings, configure:
- Run this script using the logged-on credentials – No
- Run script in 64-bit PowerShell – Yes
The first setting ensures the script runs as SYSTEM. The second ensures proper registry access on 64-bit Windows.
Assign to a group, set your schedule, and deploy.
In Monitor -> Device status, you’ll see devices reporting With issues (non-compliant, needs remediation) or Without issues (compliant). After remediation runs, non-compliant devices should flip to compliant on the next detection cycle.
What about new Outlook?
This script only works for Outlook (classic) – the Win32 desktop app from Microsoft 365 Apps.
The new Outlook for Windows stores font settings in the cloud (your Exchange Online mailbox), not in the local registry. You can’t configure it via registry, Cloud Policy, or GPO.
However, you can set default fonts using Exchange Online PowerShell with the Set-MailboxMessageConfiguration cmdlet. That’s a server-side change per mailbox – a different approach than the client-side registry method covered here.
For detailed steps on verification and monitoring, check my previous post: The only PowerShell script you need to manage registry on Windows devices using Microsoft Intune.
The script is on GitHub: Intune-Registry-Management
ENJOY 🙂



