Short answer: The Office Deployment Tool is Microsoft's free command-line installer for Click-to-Run Office. We download it from the Microsoft Download Center and write a configuration XML. Then we run the download and configure commands from an elevated Command Prompt. One XML file controls the edition, apps, languages, update channel and activation on every PC.
The Office Deployment Tool takes over where the account page stops. One PC gets Office from the account page, and that’s fine. Then somebody needs it on 5, 50 or 500 machines. That’s the job of the Office Deployment Tool. ODT, for short, is Microsoft’s free command-line installer for Click-to-Run Office.
- Download it free from the Microsoft Download Center.
- Write the XML, or build it at config.office.com.
- Run the download, then the configure command, from an elevated cmd.
- Check File, Account in Word or Excel.
You download it and write a small XML file. The file says which edition, apps, languages and update channel you want. Then you run setup.exe with it.
What it gives you over the regular installer is control. You pick exactly which apps go on the machine, set the language and decide the update schedule.
No Publisher and no Access if you don’t want them. Teams can stay off too. One XML file runs the whole show.
The workflow stays the same from build to build. One fresh Windows 11 box or a whole office, same steps. Microsoft keeps a release history for ODT, and the newest build is the one to grab.
Microsoft’s current build, as of November 2026, is 16.0.20430.20146, published October 19, 2026. The commands and XML below work the same on it.
| Point | What to know |
|---|---|
| Download | Free, 3.1 MB, from the Microsoft Download Center |
| Runs on | Windows 10, Windows 11 and Windows Server 2016, 2019, 2022 and 2025 |
| Commands | Four do everything: /download, /configure, /customize and /help |
| Office LTSC 2024, volume-licensed | Needs Channel="PerpetualVL2024" and Product ID="ProPlus2024Volume" |
| Office Customization Tool | At config.office.com; it builds the XML for you if you’d rather click than type |
| Logs | They land in %temp%. When something fails, the answer is almost always there |
What the Office Deployment Tool is
It’s a free Microsoft utility, a single setup.exe. It downloads Click-to-Run Office from Microsoft’s content delivery network and puts it on the PC as an XML configuration file describes.
IT admins use it because one reusable file controls everything. The same setup then repeats identically on every PC.
| The file controls |
|---|
| Edition and architecture |
| Apps and languages |
| Update channel |
| Activation |
ODT is tiny, about 3.1 MB. You download the .exe and unpack it, and you get two things: setup.exe and sample XML files.
That’s it. No installer wizard, and no Start menu shortcut. It just sits in a folder until you run it from cmd.
Under the hood it does two things. It pulls the Office files down from Microsoft’s CDN, or from a local network share if you set one up.
Then it puts them on the machine based on whatever XML you fed it.
| Products the tool handles |
|---|
| Microsoft 365 Apps for enterprise and Microsoft 365 Apps for business |
| Office LTSC Professional Plus 2024 and Office LTSC Standard 2024 |
| Office LTSC Professional Plus 2021 |
| Visio and Project, both subscription and volume-licensed versions |
| Retail Click-to-Run editions such as Office Home 2024 and Home & Business 2024 |
Office 2016 was the last version with an MSI installer. Volume-licensed Office 2019 and everything after it ship only as Click-to-Run.
So ODT became the standard way to deploy them.
If you bought an Office 2024 volume license key, you’ll almost certainly use ODT. No ISO, and no fancy GUI installer.
ODT and the Office Customization Tool
People confuse these two all the time. Easy mix-up at the start.
ODT is the program. It’s the setup.exe sitting in your folder, and you run it from cmd.
The Office Customization Tool, OCT, is a web form. Open config.office.com/deploymentsettings in your browser, click through the dropdowns and hit Export.
It hands you an XML for ODT. It’s basically a form builder, so you don’t have to write tags by hand.
OCT builds the XML, and ODT runs the setup. Two tools, one workflow.
Once you know what the tags do, Notepad is faster. That’s what we’d use most days.
| Feature | ODT | OCT |
|---|---|---|
| Type | Command-line executable, setup.exe |
Web-based form |
| What it does | Downloads, installs and configures Office | Creates and edits configuration XML files |
| Where to get it | Microsoft Download Center | config.office.com |
| Needs internet? | For downloads from the CDN, not for installs from a local source | Yes, always |
| Skill needed | Moderate: the command line | Low: point and click |
How to download the Office Deployment Tool
The whole process takes under a minute. The tool costs nothing, and only the Office you put on with it needs a license.
- Go to the Microsoft Download Center page with ID 49117.
- The language defaults to English. Click Download.
- The file lands in your Downloads folder. Its name carries a build number that changes with each release.
- Double-click it. It’s a self-extracting archive, not a real installer. Accept the license terms.
- Pick a short folder to extract to.
- Check the folder. You’ll see
setup.exeand a few sample XML files.
| Item | Value |
|---|---|
| Direct address | microsoft.com/en-us/download/details.aspx?id=49117 |
| File name, for example | officedeploymenttool_20430-20146.exe |
| Folder we always use | C:\ODT, because it’s easy to type later |
That setup.exe is the whole tool. The sample XMLs are starter templates, and most people throw them out and write their own.
We’d always grab the newest ODT before a deployment. A year-old build can throw strange errors about channels against a newer Office release. Microsoft says the same in its ODT overview on Microsoft Learn.
Systems it runs on
| Per the Download Center page |
|---|
| Windows 10 and Windows 11 |
| Windows Server 2016 and Windows Server 2019 |
| Windows Server 2022 and Windows Server 2025 |
You also need administrator rights on the machine. Internet access to Microsoft’s CDN is needed too, unless you install from a local source.
Keep in mind that the Office version itself still has to run on the OS.
Office LTSC 2024, for example, needs Windows 10 or later.
Before a Windows Server rollout, we’d check Microsoft’s system requirements for your exact Office version.
Creating the configuration file
Everything comes down to this XML file. It tells setup.exe what to put on the PC, how and where.
At minimum it needs an Add element with the architecture and channel, one Product with its ID, and a Language.
Save it as configuration.xml next to setup.exe.
Option 1: the Office Customization Tool
If XML makes your eyes glaze over, start here.
- Open config.office.com/deploymentsettings in your browser.
- Under Products and releases, pick 64-bit, which is almost always right now. Then choose your Office.
- Under Apps, toggle off whatever you don’t want.
- Pick your main language under Language. Add extras if users need them.
- Pick the update channel.
- Click Export in the top right.
- Save the XML and drop it in your ODT folder next to
setup.exe.
| Product | Channel to pick |
|---|---|
| Office LTSC 2024 | PerpetualVL2024 |
| Microsoft 365 Apps | Current or Monthly Enterprise |
Option 2: write the XML by hand
For anyone who’s done this a few times, Notepad beats the web form. Below are the files we’d start from.
XML for Microsoft 365 Apps
A basic Microsoft 365 Apps setup: 64-bit, English, Current Channel, license terms accepted, no UI. Copy it and save it as the configuration file.
<Configuration>
<Add OfficeClientEdition="64" Channel="Current">
<Product ID="O365ProPlusRetail">
<Language ID="en-us" />
</Product>
</Add>
<Display Level="None" AcceptEULA="TRUE" />
</Configuration>
Older guides use the channel value “Monthly”. Microsoft still accepts the old channel names, so existing files keep working.
Current is the documented value today.
XML for Office LTSC 2024
The volume license works a bit differently. The channel has to be PerpetualVL2024, and the Product ID is ProPlus2024Volume.
Miss either one, and setup fails.
<Configuration>
<Add OfficeClientEdition="64" Channel="PerpetualVL2024">
<Product ID="ProPlus2024Volume" PIDKEY="XXXXX-XXXXX-XXXXX-XXXXX-XXXXX">
<Language ID="en-us" />
</Product>
</Add>
<Property Name="AUTOACTIVATE" Value="1" />
<Display Level="Full" AcceptEULA="TRUE" />
</Configuration>
| Part of the file | What it says |
|---|---|
| OfficeClientEdition=”64″ | The 64-bit build |
| Channel=”PerpetualVL2024″ | The channel for Office LTSC 2024 |
| Product ID=”ProPlus2024Volume” | Office LTSC Professional Plus 2024 |
| PIDKEY | Your MAK key |
| Language ID=”en-us” | English, United States |
| AUTOACTIVATE with value 1 | Activate right after setup |
| Display Level=”Full” | Show the setup screen |
| AcceptEULA=”TRUE” | Accept the license terms without asking |
Replace the X’s with your MAK key. Or drop the PIDKEY attribute if your network uses KMS activation.
The AUTOACTIVATE property tells Office to activate right after setup. Otherwise it waits for the first app launch.
Still torn between the two models? Our Microsoft 365 vs Office 2024 comparison breaks down what matters for each.
XML elements worth knowing
These are the tags you’d need 90% of the time. The rest you can ignore unless you’re doing something unusual.
| XML element or attribute | What it controls | Example value |
|---|---|---|
| OfficeClientEdition | 32-bit or 64-bit installation | “64” or “32” |
| Channel | Update channel for the installation | “Current”, “MonthlyEnterprise”, “PerpetualVL2024” |
| Product ID | Which Office product to install | “O365ProPlusRetail”, “ProPlus2024Volume” |
| Language ID | Installation language | “en-us”, “fr-fr”, “MatchOS” |
| ExcludeApp ID | Apps to skip during installation | “Publisher”, “Access”, “Teams” |
| Display Level | Show or hide the install UI | “Full” or “None” |
| AcceptEULA | Auto-accept license terms | “TRUE” |
| PIDKEY | Product key (MAK) for volume licenses | “XXXXX-XXXXX-XXXXX-XXXXX-XXXXX” |
| SourcePath | Local or network path for offline install | \\server\share or C:\OfficeFiles |
| RemoveMSI | Remove older MSI-based Office versions | A self-closing element |
| Updates | Turn updates on and set where they come from | Enabled="TRUE" UpdatePath="\\server\updates" |
Office Deployment Tool update channels
The Channel tag is where rollouts most often go wrong. Pick the wrong one, and setup fails.
Or Office updates itself on a schedule that breaks your users. Both happen more than you’d think.
| Channel name | XML value | Used for | Update frequency |
|---|---|---|---|
| Current Channel | Current | Microsoft 365 Apps, most users | At least once a month, features as soon as ready |
| Monthly Enterprise Channel | MonthlyEnterprise | Microsoft 365 Apps, managed organizations | Once a month, on the second Tuesday |
| Semi-Annual Enterprise Channel | SemiAnnual | Microsoft 365 Apps, slow rollout | Features twice a year, in January and July; security fixes monthly |
| Office LTSC 2024 | PerpetualVL2024 | Office LTSC 2024 volume license | Security and quality updates only |
| Beta Channel | BetaChannel | Testing only | Frequent preview builds |
For Microsoft 365, we go with Monthly Enterprise almost every time. Features land on the second Tuesday, the same day as Patch Tuesday.
That’s predictable, and users don’t get surprised. Current Channel is fine if you like chaos, since features drop whenever Microsoft ships them.
Semi-Annual Enterprise suits you if you need slow, predictable feature changes.
Volume licenses need their matching PerpetualVL channel. Mix them up, and you get this error: “This product cannot be installed on the selected update channel.”
Deploying Office in three steps
Two commands from an elevated Command Prompt in the ODT folder do it. Most of the wait is the download. When setup is done, the window prints “Products configured successfully.”

cd C:\ODT
setup.exe /download configuration.xml
setup.exe /configure configuration.xml
| Line | What it does |
|---|---|
| The first | Changes to your ODT folder |
| The second | Fetches the Office files your XML describes. Nothing goes on the PC yet |
| The third | Puts Office on the PC as the XML describes |
| Before you start | Why |
|---|---|
| The newest ODT build is in the folder | Older builds may not know current channels |
| The XML sits next to the executable | The commands look for it there |
| Product ID and channel match | A mismatch stops setup |
| cmd is open as administrator | Without elevation the run fails |
| Older MSI Office is handled | RemoveMSI in the XML takes it off first |
| You tested on one machine | A bad XML is cheap to fix on one PC |
| In the folder after the download | What it is |
|---|---|
| The executable | The tool itself |
| Your configuration file | The instructions |
| An Office folder | The downloaded payload |
| Sample XML files | Starter templates you can delete |
Step 1: download the files
Open cmd as administrator. Not PowerShell and not Terminal, since plain cmd keeps things simple.
Expect anywhere from 5 to 30 minutes. Already have that version in the folder? Then ODT only fetches what’s missing, a second language for example. Saves bandwidth.
Here’s the annoying part: there’s no progress bar. The cmd window just sits there looking frozen. It isn’t. Let it work.
When it’s done, you’ll see an Office folder next to setup.exe, or in your SourcePath. That’s the payload.
The download step is optional for a single PC. The configure step pulls files from the CDN on its own if none are local.
Step 2: install
Same cmd, same folder. The display level in the XML decides what you see.
| Display Level | Result |
|---|---|
| “Full” | The familiar Office setup screen |
| “None” | A silent run |
Silent runs are what you want for mass rollouts. Nobody wants dialogs popping up on 200 machines at once.
Step 3: verify
First look at the cmd window. Seeing “Products configured successfully.”? Setup finished. Then a quick sanity check: open Word or Excel and go to File, Account. The version and edition should match what you configured.
If you put a key in the XML, it should already show as activated. With no key there, click Change Product Key and enter your license. Our guide on how to activate Office 2024 has the rest.
Need a key? Our Office LTSC Professional Plus 2024 key comes as a genuine license, ready for the ODT setup above. We email it instantly after payment.
The four Office Deployment Tool commands
Each command except help takes the path to an XML configuration file as its only argument.
setup.exe /download configuration.xml
setup.exe /configure configuration.xml
setup.exe /customize preferences.xml
setup.exe /help
| Command | What it does | When we’d use it |
|---|---|---|
/download |
Pulls the files and puts nothing on the PC | Prepping a network share, or stashing a specific build for later |
/configure |
Installs, changes or removes Office | Daily. It’s the workhorse |
/customize |
Applies application preferences, the AppSettings section of the XML, to an existing copy without adding or removing apps | Pushing setting changes |
/help |
Prints the built-in help | When a switch slips the mind |
Excluding apps with the Office Deployment Tool
This is why most people pick up ODT in the first place. They don’t want Publisher, Access or the old Skype for Business client on every machine.
You add ExcludeApp elements inside the Product block of your XML, one line per app. Setup then puts the suite on without those apps.
<Configuration>
<Add OfficeClientEdition="64" Channel="MonthlyEnterprise">
<Product ID="O365ProPlusRetail">
<Language ID="en-us" />
<ExcludeApp ID="Publisher" />
<ExcludeApp ID="Access" />
<ExcludeApp ID="Teams" />
<ExcludeApp ID="Lync" />
</Product>
</Add>
<Display Level="None" AcceptEULA="TRUE" />
</Configuration>
Run the configure command again later with fewer exclusions, and the missing apps get added to the existing copy.
| Valid IDs from Microsoft’s list | Note |
|---|---|
| Access, Excel, OneNote, Outlook, PowerPoint, Publisher, Teams, Word | As named |
| Groove | Microsoft tells you to use this one for OneDrive |
| OneDrive | Also on the list |
| Lync | Stands for Skype for Business |
| OutlookForWindows | The newer Outlook app |
The naming is odd, as the table shows.
Office, Visio and Project together
This question shows up on r/sysadmin every other week, and most guides overcomplicate it.
You add a separate Product element for each inside the same Add block. Here’s one XML for all three.
<Configuration>
<Add OfficeClientEdition="64" Channel="PerpetualVL2024">
<Product ID="ProPlus2024Volume">
<Language ID="en-us" />
</Product>
<Product ID="VisioPro2024Volume">
<Language ID="en-us" />
</Product>
<Product ID="ProjectPro2024Volume">
<Language ID="en-us" />
</Product>
</Add>
<RemoveMSI />
<Display Level="None" AcceptEULA="TRUE" />
</Configuration>
The catch: all three products share the same channel and architecture. Everything under one Add tag plays by the same rules.
So you can’t mix 32-bit Visio with 64-bit Office, or different LTSC channels.
| Case | What to add |
|---|---|
| Visio on a machine that already has Office | Version="MatchInstalled" on the Add element, so setup doesn’t update Office at the same time |
Removing older MSI versions
With Office 2013 or 2016 MSI already on the machine, Click-to-Run won’t go on next to it cleanly.
Add the RemoveMSI element to your XML, outside the Add block.
<Configuration>
<Add OfficeClientEdition="64" Channel="PerpetualVL2024">
<Product ID="ProPlus2024Volume">
<Language ID="en-us" />
<Language ID="MatchPreviousMSI" />
</Product>
</Add>
<RemoveMSI />
<Display Level="None" AcceptEULA="TRUE" />
</Configuration>
When you run the configure command, ODT scans for old MSI Office, removes it and then puts on the current version.
| Point | Detail |
|---|---|
| What it removes | MSI-based Office 2010, 2013 and 2016, plus matching Visio, Project and language packs |
| Carrying the old languages over | <Language ID="MatchPreviousMSI" /> |
| Keeping an old MSI Visio or Project | <IgnoreProduct ID="VisPro" /> inside RemoveMSI |
A heads-up: RemoveMSI only touches MSI-based Office. If the machine already has Click-to-Run Office, skip the tag.
That covers Microsoft 365 and Office 2019 or later.
To clear out an older Click-to-Run copy first, use a Remove element, shown in the next section. Our Microsoft Office uninstall tool guide has more options.
Uninstalling Office with the Office Deployment Tool
You run the configure command against an XML with a Remove element. It’s the cleanest scripted uninstall we know, and it works silently on many machines at once.
<Configuration>
<Remove All="TRUE" />
<Display Level="None" AcceptEULA="TRUE" />
</Configuration>
That one removes every Click-to-Run product. To remove just one app family, say Visio, swap the Remove line for a block that names its Product ID.
Handy when Visio went onto a PC whose user has no Visio license.
Offline deployment with the Office Deployment Tool
An air-gapped network, slow internet, or a 200-seat rollout with no wish for 200 separate downloads. Download once, and install everywhere.
Set SourcePath in the XML to a local folder or a network share.
<Configuration>
<Add SourcePath="C:\OfficeFiles" OfficeClientEdition="64" Channel="PerpetualVL2024">
<Product ID="ProPlus2024Volume">
<Language ID="en-us" />
</Product>
</Add>
</Configuration>
| Step | What to do |
|---|---|
| 1 | Run the download command on a box with internet. All files land in the SourcePath folder |
| 2 | Copy that folder, setup.exe and the XML to a USB drive |
| 3 | Carry it to the offline machine and run the configure command there |
| Network rollout | Point SourcePath at a share such as \\server\share\Office |
One download serves every PC, which saves gigabytes per machine.
Copying Office from one share to another
Branch offices. A central share holds every language, a local share needs only English. ODT copies between them with a DownloadPath attribute.
<Add SourcePath="\\serverb\share" OfficeClientEdition="64" Version="16.0.xxxxx.xxxxx" DownloadPath="\\servera\share">
One catch. With DownloadPath, a Version attribute is required. Leave it out and the download stops. The build number goes in Version, exactly as it sits on the source share.
Then run the download command as usual. Only the products and languages your XML names get copied.
Pretty much anyone with more than 20 machines runs ODT this way. r/sysadmin has some wild PowerShell scripts that automate the whole pipeline.
Updating Office installed by ODT
By default, Click-to-Run pulls updates from Microsoft’s CDN. There are two other ways.
Option one: run the configure command again with the same XML. Office only downloads what changed, so the second run is usually much quicker.
Option two: point Office to a local update source. You refresh that share with the download command.
<Updates Enabled="TRUE" UpdatePath="\\server\updates" />
Every machine then checks the share for fresh builds, not the internet.
That’s useful when you need control over when updates land, which is common in Windows Server environments.
| Group Policy path for the same setting |
|---|
Computer Configuration\Policies\Administrative Templates\Microsoft Office 2016 (Machine)\Updates |
If your Click-to-Run service itself misbehaves, our Office Click-to-Run guide covers the fixes.
Common errors and fixes
These are the usual suspects. Most come from four causes.
| Cause | Check |
|---|---|
| cmd not running as administrator | Reopen it elevated. This one catches people often |
| A typo or a wrong Product ID in the XML | Compare with the ID table below |
| A channel that doesn’t match the product | Volume IDs need their PerpetualVL channel |
| Security software blocking files | Look in the quarantine |
The setup log in the %temp% folder names the exact failure. Open the newest log before changing anything else.
The download hangs or errors out
Check four things, in order.
- cmd is running as admin.
- The internet connection really works.
- The XML has no typos.
- The logs in
%temp%.
That log file tells you exactly what went wrong. Read it.
Files are missing after you extract
Antivirus occasionally quarantines setup.exe during extraction, typically right after you double-click the download.
Restore the file or add an exclusion for the ODT folder. Run the ODT exe again and extract once more. Then turn protection back on.
The update channel error
The message reads “This product cannot be installed on the selected update channel”. It’s a channel mismatch, a classic.
Your Product ID says 2024 and your Channel says 2021, or the other way round.
| Products | Channel they need |
|---|---|
| 2024 volume products | PerpetualVL2024 |
| 2021 volume products | PerpetualVL2021 |
There’s no cross-compatibility.
Activation fails after setup
In most cases the key and the product don’t match. Keys don’t cross versions.
An Office 2021 Pro Plus key won’t activate Office 2024. It just doesn’t. Double-check which product your key is for.
| Volume key type | How it works |
|---|---|
| MAK | Goes in PIDKEY and activates online |
| KMS | Clients use the built-in generic key and need a KMS host on the network |
| License you own | What goes in the XML |
|---|---|
| Volume license with a MAK key | The volume Product ID, with the key in the key attribute |
| Volume license with KMS | The volume Product ID, with no key attribute |
| Retail license | The retail Product ID for your edition |
Retail keys for Office Home 2024 or Home & Business 2024 belong to retail Product IDs, for example HomeBusiness2024Retail. They don’t belong to ProPlus2024Volume. We’d pick the Product ID that matches the license you own.
Product IDs for 2026
Keep this bookmarked. These are the ones that cover most rollouts. A wrong ID puts the wrong edition on the PC.
| Product | Product ID | Channel |
|---|---|---|
| Microsoft 365 Apps for enterprise | O365ProPlusRetail | Current, MonthlyEnterprise or SemiAnnual |
| Microsoft 365 Apps for business | O365BusinessRetail | Current, MonthlyEnterprise or SemiAnnual |
| Office LTSC Professional Plus 2024 | ProPlus2024Volume | PerpetualVL2024 |
| Office LTSC Standard 2024 | Standard2024Volume | PerpetualVL2024 |
| Office LTSC Professional Plus 2021 | ProPlus2021Volume | PerpetualVL2021 |
| Visio LTSC Professional 2024 | VisioPro2024Volume | PerpetualVL2024 |
| Project Professional 2024 | ProjectPro2024Volume | PerpetualVL2024 |
| Office Home 2024, retail | Home2024Retail | Retail |
| Office Home & Business 2024, retail | HomeBusiness2024Retail | Retail |
Each volume ID must be paired with its PerpetualVL channel.
On the fence between the last two perpetual releases? Our Office 2021 vs 2024 breakdown covers what changed.
ODT, Intune or Configuration Manager
ODT fits small and mid-size networks, offline setups and anyone without device management.
Intune and Configuration Manager use the same XML format under the hood.
| Method | Best for | Requires | Customization level |
|---|---|---|---|
| ODT | IT admins, custom installs, offline setups | Command Prompt, XML file | Full: apps, languages, updates, channels |
| Microsoft 365 portal | Home users, small teams | Microsoft account, internet | Minimal: it installs the default set |
| Microsoft Intune | Cloud-managed devices | Intune subscription, Microsoft Entra ID | Full, with GUI-based policy |
| Configuration Manager | Large on-premises enterprise | Configuration Manager infrastructure | Full, with distribution points |
| Group Policy | Domain-joined PCs, settings only | Active Directory, Office ADMX templates | Settings only, not installation |
Under 50 machines with no management stack, ODT normally wins. No extra licensing, and no setup overhead.
With 500 or more machines under cloud management, we’d look at Intune, since it also handles ongoing policy.
Configuration Manager is for organizations that already have it. It isn’t something you stand up just for Office.
Automating with a batch script
You wrap the download and configure commands in a .bat file stored next to setup.exe and the XML. Then you run it as administrator or through a login script.
Every PC gets the identical setup, with no typos. Hands-on time drops to a couple of minutes per machine.
Running it from a network share? Then pass the full network path for both setup.exe and the XML. Make a file called deploy-office.bat.
@echo off
cd /d "%~dp0"
echo ================================
echo Office Deployment Tool: Auto
echo ================================
echo.
echo Downloading Office files...
setup.exe /download configuration.xml
echo.
echo Installing Office...
setup.exe /configure configuration.xml
echo.
echo Done! Check File, Account in any
echo Office app to verify the install.
pause
Right-click it and choose Run as administrator.
| Line | Why it’s there |
|---|---|
The cd /d line |
Makes the script work from whatever folder it sits in |
pause at the end |
Keeps the window open, so you don’t miss any errors |
For network rollouts, put the whole ODT folder on a share, downloaded Office files included.
Then trigger the script by login script, Configuration Manager or whatever you use. UNC paths work fine.
Good practice for rollouts
Here’s what’s worth knowing early on. Most broken rollouts skip one of these.
| Practice | Why |
|---|---|
| Grab the newest ODT before every rollout | An ODT from six months ago might not know today’s channels. It takes 30 seconds to download and saves an hour of debugging |
| Test on one machine first | Always. Fixing a bad XML on 100 PCs is no fun |
| When in doubt, use OCT | Hand-written XML is generally faster when you know it well, but config.office.com catches invalid combinations of channel and Product ID |
| Read the logs | %temp% is your friend |
| Go offline for bigger rollouts | Download once to a share and install from there. Less bandwidth, faster runs |
| Keep RemoveMSI for upgrades from 2016 or older | It saves you from uninstalling the old Office by hand first |
| Match every Product ID to its channel | A mismatch stops setup |
Common Office Deployment Tool mistakes
- Running cmd without administrator rights.
- Pairing a 2024 Product ID with a 2021 channel.
- Putting a retail key under a volume Product ID.
- Closing the cmd window because the download “looks frozen”.
- Using an old ODT build against a current Office release.
- Adding RemoveMSI on a machine that has Click-to-Run Office.
- Rolling out to a hundred PCs before testing on one.
- Changing settings before reading the log.
Related guides
- Office ISO Download
- Which C++ Build Tools version you have
- What Software Center is and how to use it
- Office 32-bit vs 64-bit
- Office language accessory pack
Terms used on this page
| Term | Meaning |
|---|---|
| ODT | The command-line installer described on this page |
| OCT | Office Customization Tool, the web form that builds the XML |
| Click-to-Run | Microsoft’s streaming installer technology for current Office |
| MSI | The older Windows Installer setup, last used by Office 2016 |
| CDN | Content delivery network, Microsoft’s download servers |
| Channel | The update track an Office copy follows |
| Product ID | The name ODT uses for an Office product |
| MAK | Multiple Activation Key, activated online against Microsoft |
| KMS | Key Management Service, activation through a host on your network |
| SourcePath | The folder or share that holds downloaded Office files |
| UNC path | A network path that starts with two backslashes |
Typical ODT problems and fixes
The cmd window looks frozen
The download shows no progress bar, and cmd seems stuck. It isn’t. Close it and the download stops halfway. Leave it alone, and check the Office folder size if you need proof of life.
Channel and Product ID don’t match
Setup stops with the update channel message. A 2024 Product ID sits next to the 2021 channel. Correct the channel, and setup runs.
A retail key in a volume XML
A Home & Business key in an XML built for the volume edition. Activation fails. With the retail Product ID, the same key works.
setup.exe missing after extraction
The folder holds only XML files. Antivirus took the executable. Restore it, add an exclusion for the folder, extract again.
An old MSI Office in the way
An MSI copy of Office 2016 still on the PC, and Click-to-Run setup complains. With RemoveMSI in the XML, the old suite goes first.
Every PC downloading its own copy
Each machine pulls the full payload from the internet, and the line chokes. A single download to a share serves all of them.
An outdated ODT build
Errors about channels nobody recognizes. Check the build of setup.exe. With the current build from the Download Center, the same XML usually runs.
Visio added to an existing Office
Adding Visio to a PC that already has Office can start an Office update too. A Version attribute that matches the existing copy stops that.
Office asks for a key after setup
No key in the XML, so the apps ask for one. Nothing is wrong. Enter it under File, Account, Change Product Key.
Systems and timings for ODT runs
The commands and XML files apply to Click-to-Run Office installed by ODT. Windows 11 Pro is the usual target.
| Item | Details |
|---|---|
| Rights needed | Local administrator on the target PC, for /configure and /customize |
| Also listed by Microsoft for ODT | Windows 10 and Windows 11 Home, Pro and Enterprise; Windows Server 2016, 2019, 2022 and 2025 |
| Office | Office LTSC Professional Plus 2024, Visio and Project 2024 volume editions, and Microsoft 365 Apps |
| Download time | 5 to 30 minutes, depending on the connection |
| Setup time | About 5 to 10 minutes |
| Runs from a share | Full network path for both setup.exe and the XML |
| Where the logs go | %temp% on the PC that ran setup |
Once you’ve done a couple of ODT rollouts, you won’t go back to the regular installer. The control is just too useful.
FAQ
Is the Office Deployment Tool free?
Yes. Microsoft offers it as a free download from the Microsoft Download Center. The Office you install with it still needs a valid license or subscription to activate.
Where do I download the Office Deployment Tool?
From the Microsoft Download Center page with ID 49117. As of November 2026 the current build is 16.0.20430.20146, published October 19, 2026. The file is about 3.1 MB.
Can I use the Office Deployment Tool for Office 2024?
Yes. For Office LTSC Professional Plus 2024, we'd set the channel to PerpetualVL2024 and the Product ID to ProPlus2024Volume. The two retail 2024 editions use their own retail Product IDs.
How do I install Office silently with ODT?
Set the display level to None and accept the license terms in the XML. Then run the configure command from an elevated Command Prompt. Office goes on in the background with no dialogs.
Do I need a product key to use the Office Deployment Tool?
No. You can leave the key out and activate later under File, Account, Change Product Key. We'd put a MAK key in the XML to activate during or right after setup.
Does the Office Deployment Tool work without internet?
The target PC doesn't need internet. We'd run the download on a connected machine, with the source path set to a folder. Then copy that folder, the tool and the XML to the offline PC and run the configure command there.
What operating systems does ODT support?
Microsoft lists Windows 10 and Windows 11. Windows Server from 2016 to 2025 is on the list too. It doesn't run on macOS or Linux, and Office for Mac has its own package.
How long does an Office install with ODT take?
Typically the download takes 5 to 30 minutes, depending on the connection. Setup itself takes about 5 to 10 minutes. A local source skips the download for every PC after the first.
