InstallAdvancedTutorialsUpdated July 5, 2026

How to Install Office 365 Offline for Enterprise Deployment

Use the Office Deployment Tool to download Microsoft 365 Apps once, stage the source on a network share, and install offline across your fleet without each client hitting the internet.

Emanuel De Almeida July 5, 2026 16 min read
Difficulty
Advanced
Time
45-60 minutes for the first build; minutes per client afterward
Steps
8
Last tested
July 5, 2026

Microsoft 365 Apps (still commonly called "Office 365") installs with Click-to-Run, which by default streams the whole suite from Microsoft's CDN on every machine. For enterprise deployment that's slow, inconsistent, and dependent on each client's internet connection. The Office Deployment Tool solves this: you download the installation source once with setup.exe /download, define exactly what to install in a configuration.xml, then install offline with setup.exe /configure. This guide builds a clean offline package, stages it on a network share, and - importantly - pins the install to that local source so clients don't silently fall back to the internet. It also covers verifying the result and controlling updates. The key rename to remember: the product is Microsoft 365 Apps for enterprise, but the ODT Product ID is still O365ProPlusRetail.

Before you start

What you will learn

  • How to use the Office Deployment Tool (ODT) to download the Microsoft 365 Apps source once, stage it on a network share, and install it offline on target computers with a controlled configuration.
  • Downloading Office individually on every machine wastes bandwidth and produces inconsistent installs. A single downloaded source plus an XML configuration gives you one predictable, repeatable package for the whole fleet.

Requirements

  • You need local administrator rights on the machine that builds the source and on every target computer, a Windows file share reachable by the clients (or their computer accounts), and a per-user Microsoft 365 Apps license for activation. Only the initial /download step needs internet.
  • Windows 10, Windows 11, or Windows Server 2016/2019/2022/2025. Plan for several GB of source files on the share (roughly 3.5-4 GB for one 64-bit language, more with extra languages or apps) and about 4 GB free on each client.
  • Local administrator on the build machine and on each target computer

Good to know

  • Most of the up-front time is the one-time source download; per-client installs are fast.
  • Commands and XML verified against current Microsoft Learn ODT documentation in July 2026.

Quick answer

Download the Office Deployment Tool from the Microsoft Download Center, build a configuration.xml (ideally with the Office Customization Tool at config.office.com), run setup.exe /download to fetch the source once, copy setup.exe plus the Office folder to a network share, then install on each client with setup.exe /configure using a config that sets SourcePath to the share and AllowCdnFallback to FALSE. Activation is per user via their Microsoft 365 license.

Code
setup.exe /download configuration.xml   then   setup.exe /configure install.xml

Step-by-step tutorial

8 steps
1

Download and extract the Office Deployment Tool

Get the current ODT so you have setup.exe and sample configuration files.

https://www.microsoft.com/en-us/download/details.aspx?id=49117

Download the Office Deployment Tool from the Microsoft Download Center (https://www.microsoft.com/en-us/download/details.aspx?id=49117). Always take the latest version rather than pinning an old build. Run the downloaded self-extracting officedeploymenttool.exe, accept the license, and extract to a working folder such as C:\ODT.

Extraction gives you setup.exe (the tool itself) plus sample configuration.xml files you can adapt.

Cmd
mkdir C:\ODT
Expected resultThe C:\ODT folder contains setup.exe and one or more sample configuration.xml files. Running setup.exe /? lists the download, configure, and packager modes.

Pin the download page, not a version number - Microsoft updates the ODT regularly with fixes. If a later step misbehaves, re-download the newest ODT first.

2

Create the configuration.xml

Define exactly what to download and install: product, edition, channel, languages, and exclusions.

https://config.office.com/deploymentsettings

The easiest and least error-prone way to build this file is the Office Customization Tool at https://config.office.com/deploymentsettings - pick the suite, channel, architecture, languages, and apps, then export the XML. You can also edit it by hand. A solid enterprise starting point:

<Configuration>
<Add OfficeClientEdition="64" Channel="MonthlyEnterprise">
<Product ID="O365ProPlusRetail">
<Language ID="en-us" />
<ExcludeApp ID="Groove" />
<ExcludeApp ID="Lync" />
</Product>
</Add>
<Property Name="SharedComputerLicensing" Value="0" />
<Property Name="FORCEAPPSHUTDOWN" Value="TRUE" />
<Display Level="None" AcceptEULA="TRUE" />
<Logging Level="Standard" Path="%temp%" />
</Configuration>

What the key options mean:

  • OfficeClientEdition="64" installs the 64-bit build (the default and recommended edition).
  • Channel="MonthlyEnterprise" gives predictable monthly updates with extra validation.
  • Product ID="O365ProPlusRetail" is Microsoft 365 Apps for enterprise. Use O365BusinessRetail for Business plans.
  • ExcludeApp removes apps you don't want. Groove is OneDrive for Business (legacy client), Lync is Skype for Business; use OneDrive, Teams, or Bing to exclude those.
  • Display Level="None" with AcceptEULA="TRUE" makes the install silent.
Expected resultA valid configuration.xml saved in C:\ODT that describes your intended Microsoft 365 Apps install.

Keep this file under version control per client site. Product IDs differ by SKU: O365ProPlusRetail (enterprise) vs O365BusinessRetail (business). A wrong Product ID is the most common cause of an install that pulls the wrong suite.

3

Download the Office installation source once

Fetch the full Click-to-Run source to a local folder so clients never need the CDN.

From an elevated command prompt in C:\ODT, run the ODT in download mode against your configuration file. This is the only step that requires internet, and you only do it once per channel/language set.

C:\ODT\setup.exe /download C:\ODT\configuration.xml

The tool creates an Office subfolder (with a Data\<version> folder) containing the streamed installation files. If the download is interrupted, run the same command again - ODT resumes and only fetches what's missing.

Cmd
C:\ODT\setup.exe /download C:\ODT\configuration.xml
Expected resultAn C:\ODT\Office\Data\<version> folder appears containing .cab and stream files; total size is typically 3.5-4 GB for one 64-bit language.

The download has no visible progress bar - it returns to the prompt when done. Confirm success by checking that Office\Data\<version> exists and the folder size is in the expected GB range, and review the log in %temp% if it fails.

4

Stage the source on a network share

Centralize the installer so every client (or deployment tool) installs from one location.

Copy setup.exe, your configuration.xml, and the entire Office folder to a share, for example \\fileserver\M365Source. Then set permissions carefully based on who runs the install:

  • Interactive installs run as the signed-in admin, so grant Domain Users (or the relevant admins) Read & Execute.
  • Silent deployments via GPO startup script, Configuration Manager, or Intune usually run as SYSTEM / the computer account, so grant Domain Computers Read & Execute on both the share and NTFS.

Grant Full Control to Domain Admins and SYSTEM on the server itself.

Cmd
robocopy C:\ODT \\fileserver\M365Source /E
Expected resultFrom a client, dir \\fileserver\M365Source lists setup.exe, the XML, and the Office folder, and the account that will run the install can read them.

The most common silent-deployment failure is granting share access to Domain Users while the job actually runs as the computer account - add Domain Computers read access to avoid it.

5

Create an install configuration pinned to the local source

Force clients to install strictly from the share, with no silent CDN fallback.

Create a second file (for example install.xml) that points at the share with SourcePath and disables CDN fallback. This is the step that actually makes the deployment offline - without SourcePath and AllowCdnFallback="FALSE", Click-to-Run can quietly pull from the internet.

<Configuration>
<Add SourcePath="\\fileserver\M365Source" OfficeClientEdition="64" Channel="MonthlyEnterprise" AllowCdnFallback="FALSE">
<Product ID="O365ProPlusRetail">
<Language ID="en-us" />
<ExcludeApp ID="Groove" />
<ExcludeApp ID="Lync" />
</Product>
</Add>
<Property Name="SharedComputerLicensing" Value="0" />
<Property Name="FORCEAPPSHUTDOWN" Value="TRUE" />
<Updates Enabled="TRUE" />
<Display Level="None" AcceptEULA="TRUE" />
<Logging Level="Standard" Path="%temp%" />
</Configuration>

SourcePath must point at the folder that contains the Office folder - not the Office folder itself. Set SharedComputerLicensing to 1 only for RDS, Citrix, or Windows multi-session (AVD) hosts.

Expected resultAn install.xml on the share that installs from \\fileserver\M365Source and will not reach the CDN.

Keep Channel identical to the channel you downloaded. If a language pack isn't in the local source and AllowCdnFallback is FALSE, that language simply won't install - add it to the download source instead of re-enabling fallback.

6

Install Office on target computers

Run the offline install on each client, interactively or through a deployment tool.

On a target machine, run the ODT in configure mode from an elevated context against the install configuration on the share:

\\fileserver\M365Source\setup.exe /configure \\fileserver\M365Source\install.xml

For at-scale rollout, call the same command from a GPO startup script (runs as SYSTEM), a Configuration Manager application, or an Intune Win32 app wrapping setup.exe. Because the install is silent (Display Level="None"), there's no user interaction.

Cmd
\\fileserver\M365Source\setup.exe /configure \\fileserver\M365Source\install.xml
Expected resultOffice installs silently from the share and the apps appear in the Start menu; no CDN download occurs.

The command must run elevated. A non-elevated run is the usual cause of an install that appears to do nothing or exits with an error. Check %temp% logs for the exit code if a client fails.

7

Verify the installation and activation

Confirm the right version, channel, and apps installed, and that Office is licensed.

Read the Click-to-Run configuration registry for version, channel, and excluded apps - this is fast and reliable, unlike querying Win32_Product (which is slow and can trigger MSI repair actions, so avoid it):

Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration' | Select-Object ProductReleaseIds, VersionToReport, CDNBaseUrl, O365ProPlusRetail.ExcludedApps

For activation, the authoritative check for standard user-based subscriptions is File > Account inside any Office app, which should show *Product Activated* once the user signs in. ospp.vbs /dstatus is mainly useful for volume/KMS or shared-computer scenarios, not per-user subscription activation.

PowerShell
Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration' | Select-Object ProductReleaseIds, VersionToReport, CDNBaseUrl, O365ProPlusRetail.ExcludedApps
Expected resultThe registry shows ProductReleaseIds of O365ProPlusRetail, a VersionToReport matching your source, a CDNBaseUrl mapping to your chosen channel, and your excluded apps; File > Account shows Product Activated.

The channel is encoded in CDNBaseUrl - for example the Monthly Enterprise Channel GUID 55336b82-a18d-4dd6-b5f6-9e5095c314a6. Do not use Get-WmiObject Win32_Product; enumerating it reconfigures every installed MSI and is a known performance and stability trap.

8

Control updates and ongoing maintenance

Decide how clients update after deployment and keep the offline source current.

Computer Configuration > Policies > Administrative Templates > Microsoft Office 2016 (Machine) > Updates

Pick an update strategy and set it in the configuration or via policy:

  • CDN updates (simple): leave Updates Enabled="TRUE" and clients pull updates from Microsoft directly.
  • Local update source (bandwidth-controlled): download the newer source to a share and point clients at it:

<Configuration>
<Updates Enabled="TRUE" UpdatePath="\\fileserver\M365Updates" />
</Configuration>

- Policy-managed: use the Office ADMX Update Channel policy under Computer Configuration > Administrative Templates > Microsoft Office 2016 (Machine) > Updates, which overrides the channel set by ODT.

Refresh the offline source periodically by re-running setup.exe /download - ODT only fetches the changed files.

Cmd
C:\ODT\setup.exe /download C:\ODT\configuration.xml
Expected resultClients update from your chosen location, and re-running /download brings the source current with only incremental files pulled.

Always pilot a new build/channel with a small group before broad release. Feature updates can change behavior, and a bandwidth spike from many clients updating at once can saturate a WAN link.

How to Confirm the Offline Deployment Worked

A successful offline deployment has three properties. First, the apps installed from your local source - you should see no CDN download during install, and the client's ClickToRun CDNBaseUrl should match the channel you chose. Second, the right build is present: the ClickToRun registry's VersionToReport matches the version in your downloaded source, and O365ProPlusRetail.ExcludedApps lists exactly the apps you excluded. Third, Office is activated: File > Account shows *Product Activated* after the user signs in with their licensed account. If any of these is off, it usually points back to a specific step - a missing SourcePath, a channel mismatch, or a licensing gap - rather than a broken install overall.

  • Apps installed from the share with no CDN traffic; ClickToRun registry shows the expected version, channel, and excluded apps; File > Account shows Product Activated.
  • The install pulls gigabytes from the internet (SourcePath missing or fallback allowed), the wrong suite installed (wrong Product ID), or apps show Unlicensed (no license assigned or the user hasn't signed in).
  • Should match the version in your downloaded Office\Data folder.
  • GUID for the Monthly Enterprise Channel; confirms clients are on the intended channel.

Troubleshooting

The install still downloads gigabytes from the internet

Cause: The install configuration has no SourcePath, or AllowCdnFallback isn't set to FALSE, so Click-to-Run reaches the CDN.

Use an install config with SourcePath="\\server\share" and AllowCdnFallback="FALSE", and make sure the Office folder actually exists at that path alongside setup.exe. Keep the install Channel the same as the downloaded source.

Silent deployment via GPO or SCCM fails, but a manual install works

Cause: The scheduled/startup job runs as SYSTEM (the computer account), which has no read access to the share.

Grant Domain Computers Read & Execute on both the share and NTFS permissions. Test by confirming the computer account can reach \\server\share\setup.exe.

setup.exe seems to do nothing or exits with an error code

Cause: The command wasn't run elevated, or an older MSI-based Office is blocking the install.

Run from an elevated prompt or as SYSTEM. To remove legacy Office, add <RemoveMSI /> to the configuration. Read the log in %temp% for the specific exit code.

Office installed but shows Unlicensed or Product Notice

Cause: The user has no Microsoft 365 Apps license, hasn't signed in yet, or it's a shared host without shared computer licensing.

Assign a license and have the user sign in via File > Account. For RDS/Citrix/AVD, set SharedComputerLicensing to 1 in the configuration and reinstall or reconfigure.

Unwanted apps (Teams, OneDrive) installed anyway

Cause: The matching ExcludeApp entries were missing or misspelled, or exclusions weren't applied to every Product block.

Add the correct <ExcludeApp ID="..." /> entries (for example Teams, OneDrive, Groove, Lync) and confirm the result in the ClickToRun registry's O365ProPlusRetail.ExcludedApps value.

Frequently asked questions

Do target computers need internet to install Office offline?

No for the installation itself, as long as the install config sets SourcePath to your local share and AllowCdnFallback="FALSE". Clients do need internet later for activation and for the user to sign in with their Microsoft 365 account.

What Product ID do I use for Microsoft 365 Apps for enterprise?

Use O365ProPlusRetail - it's still the correct ID even though the product was renamed from Office 365 ProPlus. Use O365BusinessRetail for Microsoft 365 Business plans, and different IDs for LTSC/perpetual editions.

Which update channel should enterprises use?

Monthly Enterprise Channel gives predictable monthly updates with extra validation and suits most organizations. Semi-Annual Enterprise Channel updates twice a year for maximum stability, while Current Channel ships features fastest but with the least soak time.

How do I make sure Office installs from the share and not the internet?

In the install configuration, set SourcePath to the folder that contains the Office folder and set AllowCdnFallback="FALSE". Keep the install Channel identical to the channel you downloaded so versions match.

How do I check the installed Office version and channel?

Read the Click-to-Run registry at HKLM\SOFTWARE\Microsoft\Office\ClickToRun\Configuration (VersionToReport, CDNBaseUrl, ExcludedApps). Avoid Get-WmiObject Win32_Product, which is slow and can trigger MSI reconfiguration across the machine.

How do I keep Office updated in an offline environment?

Download a newer source to an updates share and point clients at it with <Updates Enabled="TRUE" UpdatePath="\\server\M365Updates" />, or manage the channel through the Office ADMX Update Channel policy. Re-running setup.exe /download only pulls changed files.

Reader reviews

Rate this articleBe the first to rate
No written reviews yetRate the article above, or be the first to share your experience.

Related articles