Skip to content
April 13, 2026

How to enable and manage file-level archive in M365: Admin guide

File-level archive is now in public preview as of March 30, 2026. If you're not yet familiar with what it is or how the billing model works, start with the first two posts in this series:

This post covers the admin side: how to enable file-level archive in your tenant, how to control it at the site level, and what to communicate to end users before you roll it out. All PowerShell commands reflect the public preview release.

Prerequisites

Before you can enable file-level archive, three things must be in place:

Requirement Details
1. Microsoft 365 Archive enabled M365 Archive must be turned on in your tenant via the SharePoint admin center. This is the master toggle for all archive capabilities (site and file).
2. Pay-as-you-go billing configured Archive is a consumption-based service — no license to purchase, but you must set up an Azure billing subscription. See Microsoft's setup guide.
3. SharePoint Online PowerShell v16.0.26914.12004+ The file-level archive cmdlet flags require this version or later. Run Get-Module -Name Microsoft.Online.SharePoint.PowerShell -ListAvailable to check.

As Trent Green explained on the Sync Up podcast: "Archive is one of the pay-as-you-go services, which means it's completely consumption-based. There are no license requirements. An admin has to opt in to turning on archive and has to set up a pay-as-you-go billing subscription."

Billing won't start immediately. Although you need to enable M365 Archive billing, you will not be billed for file-archive usage until public preview begins on March 30, 2026. You can enable and test safely before charges begin.

Step 1: Enable file-level archive at the tenant level

During public preview, file-level archive must be explicitly enabled via PowerShell. (At GA, it will be on by default when M365 Archive is enabled.)

# Connect to SharePoint Online
Connect-SPOService -Url https://yourtenant-admin.sharepoint.com

# Enable file-level archive for the tenant
Set-SPOTenant -AllowFileArchive $True

This is the master switch. When set to $True, file-level archive is available across your tenant (subject to site-level settings). When set to $False, no new files can be archived by any user on any site, but existing archived files can still be reactivated.

Step 2: Control which sites can archive files

By default, all sites have file-level archive enabled once the tenant setting is on. To restrict archival to specific sites, disable it on a per-site basis:

# Disable file-level archive on a specific site
Set-SPOSite -Identity https://yourtenant.sharepoint.com/sites/HRSite -AllowFileArchive $False

# Enable file-level archive on a specific site
Set-SPOSite -Identity https://yourtenant.sharepoint.com/sites/FinanceSite -AllowFileArchive $True

When -AllowFileArchive is $False on a site, the Archive action is not available to end users on that site. Existing archived files can still be reactivated.

Step 3: Set the default for new sites

Control whether newly created sites will have file-level archive enabled by default:

# New sites WILL have file archive enabled (default)
Set-SPOTenant -AllowFileArchiveOnNewSitesByDefault $True

# New sites will NOT have file archive enabled
Set-SPOTenant -AllowFileArchiveOnNewSitesByDefault $False

This setting is copied to each new site at creation time. It does not retroactively change existing sites.

The three control levers

Control Cmdlet Scope Default
Tenant-level enablement Set-SPOTenant -AllowFileArchive Entire tenant (overrides site-level if $False) $True
Site-level enablement Set-SPOSite -AllowFileArchive Individual site $True
Default for new sites Set-SPOTenant -AllowFileArchiveOnNewSitesByDefault Future sites only $True

Think of it as a hierarchy: the tenant switch must be on for any site-level switch to matter. If the tenant switch is off, no sites can archive regardless of their individual settings.

Checking archive usage per site

Once files are being archived, admins can see how much storage is consumed by archived files on a given site:

# Get archived file storage for a specific site (in bytes)
Get-SPOSite -Identity https://yourtenant.sharepoint.com/sites/HRSite | Select-Object Url, ArchivedFileDiskUsed

The ArchivedFileDiskUsed property shows the total bytes consumed by archived files on that site.

Graph API: Archiving and reactivating files programmatically

For automation and third-party integration, Microsoft provides Graph API endpoints (currently in beta):

Action Endpoint Documentation
Archive a file POST /drives/{driveId}/items/{itemId}/archive driveItem: archive
Reactivate a file POST /drives/{driveId}/items/{itemId}/unarchive driveItem: unarchive

Important: The private preview bit-flip gotcha

If your organization participated in the file-level archive private preview, read this carefully.

When transitioning from private preview to public preview, the value of the file-level archive setting for individual sites is inverted. This means:

  • Sites that were enabled during private preview are now disabled unless corrected
  • Sites that were disabled during private preview are now enabled unless corrected

Fix with:

# Re-enable a site that was enabled during private preview
Set-SPOSite -Identity https://yourtenant.sharepoint.com/sites/MySite -AllowFileArchive $True

# Disable a site that was disabled during private preview but is now enabled
Set-SPOSite -Identity https://yourtenant.sharepoint.com/sites/OtherSite -AllowFileArchive $False

Also note: between the private preview ending and public preview beginning, the archive functionality will be temporarily unavailable for new archival operations. Existing archived files remain archived and can be reactivated.

Preparing your end users

Trent Green's advice to admins preparing for deployment:

"Figuring out your company policies of what files you want to archive — whether it be based on file type or just last access state — whether you have any restrictions on which sites you want to apply these policies to... and then more tactically speaking, preparing your end users. We're going to be launching a lot more documentation about file archive in the coming months, and having your end users have a distilled version of that that applies to your company will really make sure that this doesn't come as a surprise to them when you do deploy policy."

Key points to communicate to end users:

  1. Archived files are not deleted. They remain visible in the same location with a small archive icon.
  2. Reactivation is free and easy. Click "Reactivate" and the file comes back, instantly within 7 days, within 24 hours after that.
  3. This is a storage optimization. Frame it as the organization managing costs, not removing anyone's content.
  4. Copilot won't surface archived content. This improves AI response quality by focusing on active, relevant data.

How Orchestry bridges the gap until native policies arrive

The public preview gives you the platform capability. But "select files, click Archive, repeat for every site" doesn't scale when you're managing hundreds or thousands of workspaces with terabytes of inactive content.

Orchestry participated in Microsoft's file-level archive private preview and is building the admin-driven, rule-based archival workflow that native tooling won't deliver until later this year:

  • Target by inactivity, file type, and file size. Archival criteria defined by inactivity threshold, file type, and file size, such as PowerPoint files over 100 MB not modified in 2+ years
  • Execute across bulk-selected workspaces. Execute across bulk-selected workspaces. Archival triggered across 10, 100, or 1,000 sites from Orchestry's reporting in a single action
  • Orchestrated job execution. Queued jobs with concurrency controls and throttling, designed to work within Microsoft's API rate limits
  • Owner notifications. Optional email and Teams notifications explaining what was archived, how much storage was recovered, and how to reactivate if needed
  • Aggregate reporting. File count, total size archived, and failure counts per job for audit and governance

Orchestry uses the same Graph API endpoints as any first-party solution: content stays in Microsoft 365 Archive cold storage, within your compliance boundary, with all metadata and permissions preserved.

Native admin-driven policies are targeting fall 2026. Orchestry is building toward that capability today.


Quick reference: All PowerShell commands

Purpose Command
Enable file archive for tenant Set-SPOTenant -AllowFileArchive $True
Disable file archive for tenant Set-SPOTenant -AllowFileArchive $False
Enable file archive for a site Set-SPOSite -Identity <url> -AllowFileArchive $True
Disable file archive for a site Set-SPOSite -Identity <url> -AllowFileArchive $False
Set default for new sites (on) Set-SPOTenant -AllowFileArchiveOnNewSitesByDefault $True
Set default for new sites (off) Set-SPOTenant -AllowFileArchiveOnNewSitesByDefault $False
Check archived storage per site  Get-SPOSite -Identity <url> | Select Url, ArchivedFileDiskUsed 
Fix bit-flip (re-enable a site) Set-SPOSite -Identity <url> -EnableFileArchive $True

Frequently asked questions

What version of SharePoint Online PowerShell do I need?

You need version 16.0.26914.12004 or later to use the file-level archive cmdlet flags. Run Get-Module -Name Microsoft.Online.SharePoint.PowerShell -ListAvailable to check your current version. Update via PowerShell Gallery if needed.

Will I be billed as soon as I enable file-level archive?

Although you must enable M365 Archive billing, charges are consumption-based and only apply when your total storage (active + archived) exceeds your tenant's included quota. If you're under quota, enabling and testing file-level archive won't cost anything.

Can I enable file-level archive for some sites but not others?

Yes. Use Set-SPOSite -Identity <url> -AllowFileArchive $False to disable specific sites. The tenant-level switch must be on for any site-level setting to take effect. You can also control whether new sites get file archive enabled by default using Set-SPOTenant -AllowFileArchiveOnNewSitesByDefault.

What happens if I disable file-level archive at the tenant level?

No new files can be archived on any site, regardless of site-level settings. Existing archived files remain archived and can still be reactivated. The tenant-level setting overrides all site-level settings when set to $False.

Is there a Graph API for file-level archive?

Yes. Microsoft provides beta endpoints: POST /drives/{driveId}/items/{itemId}/archive and POST /drives/{driveId}/items/{itemId}/unarchive. See the archive and unarchive documentation. CSOM is also available.

Who can archive files? Who can reactivate them?

Users with Edit / Contribute permissions can archive files. Users with Read permissions can reactivate files. These permission levels are not configurable. Reactivation is intentionally low-friction so end users can recover content without admin intervention. For full details, see Microsoft 365 file-level archive: What it is, how it works, and what IT admins need to know.

How do I check how much storage is archived per site?

Use PowerShell: Get-SPOSite -Identity <url> | Select-Object Url, ArchivedFileDiskUsed. The ArchivedFileDiskUsed property shows total bytes consumed by archived files on that site. Tenant-level reporting is planned for GA.

We participated in the private preview. Do we need to do anything special?

Yes. The file-level archive setting for individual sites was inverted between private preview and public preview. Sites that were enabled are now disabled, and vice versa. Fix with Set-SPOSite -Identity <url> -EnableFileArchive $True (or $False). Also note a temporary gap between private preview ending and public preview beginning where new archival is unavailable.

When will admin-driven archive policies be available?

Microsoft is targeting fall 2026 for admin-driven policies (e.g., "archive all files inactive for 2+ years"). Until then, archival is manual in native tooling. Orchestry is building rule-based, bulk file archival using the same Microsoft Graph API.

What should I communicate to end users before enabling file-level archive?

Key messages: (1) archived files are not deleted — they remain visible with an archive icon, (2) reactivation is free and easy — instant within 7 days, up to 24 hours after that, (3) this is a storage optimization, not content removal, and (4) archived content will not appear in Copilot responses.

Are there rate limits when archiving files via the API?

Yes. Microsoft applies standard throttling to archive and unarchive API calls. Preview participants have reported rate limit errors when processing files faster than approximately 6 files per 0.02 seconds. Production automation should include retry logic and respect 429/throttling responses.

Can I archive files on a Teams-connected site?

Yes, file-level archive works on Teams-connected SharePoint sites. Note that archiving a Teams-connected site (site-level archive) does not archive the Team itself; these are independent operations. File-level archive within an active Teams site works normally.


Sources: Microsoft Learn: Manage Microsoft 365 Archive | Microsoft Learn: FAQ | OneDrive Sync Up Ep. 22: File Archive with Trent Green | Graph API: driveItem:archive (beta)

Other posts you might be interested in

View All Posts