HomeNewsletterCommunityMVP FeedToolsArchiveBlogToday's NewsAboutServicesQuick Links Subscribe free
← Back to Blog
Autopilot AutopilotIntuneDevice OwnershipCorporate IdentifiersMicrosoft GraphEnrollmentWindows 11PowerShell

Corporate or personal? How Autopilot devices get their ownership label, and what breaks when it is wrong

IA
Imran Awan
21 August 2026

Every device in Microsoft Intune carries an ownership label. It is either corporate or personal, and in a few unhappy cases it is neither. Most administrators see that field in the device properties blade, assume it is a cosmetic tag for reporting, and never look at it again. That assumption is expensive. Ownership is a real control plane. It decides what inventory Intune collects, which corporate-only features will even talk to the device, whether an enrolment restriction lets the device in at all, and what a subsequent wipe is allowed to do.

Windows Autopilot devices are supposed to land on corporate automatically. Microsoft says so in plain language. But a device can reach your tenant by more than one road, and some of those roads end in personal. When that happens, nothing breaks loudly. The device syncs, applies policy, reports compliant, and quietly sits outside a chunk of your management surface.

The short version

Intune stamps device ownership at enrolment time, based purely on the enrolment route, and exposes it as the managedDeviceOwnerType property with the documented values unknown, company and personal. Windows Autopilot registered devices are registered as corporate owned, but devices that register with Microsoft Entra are marked personal, so the same physical laptop can end up on either label depending on how it got in. The corporate identifiers feature can pre-declare Windows devices as corporate, but on Windows it only applies at enrolment time and it marks every non-matching enrolling device in the tenant as personal. Audit ownership against the Autopilot registration list with Graph, fix the label per device in Properties, and understand that flipping corporate to personal makes Intune delete the app information it already collected within seven days.

The problem: a personal label quietly shrinks your management surface

Start with what actually differs, because the vague version of this story is useless. Microsoft documents specific behavioural differences between a corporate-owned device and a personally owned one. These are not opinions or field folklore. They are in the product documentation.

On inventory and privacy, the difference is deliberate. Intune can collect a full phone number and app inventory from a corporate device, but can only collect a partial phone number and app inventory for personal devices. Microsoft's end-user facing article on data visibility is blunt about it. Your organisation can see the full phone number of all corporate-owned devices, and the last four digits of a personal device's phone number.

For applications, on corporate-owned devices your organisation sees all installed apps. On personal devices it sees the managed app inventory, which means work and school apps. Location follows the same line. Your organisation can view a lost corporate-owned device's location, and cannot view a personal device's location.

On Windows specifically, the same article lists a set of deeper details that are only available on a corporate-owned device. Hardware and operating system environment information. Installed certificate details. File paths and file names. Operating system user and group information. Registry and event log entries. Details about running processes. That list is the Device query feature, and the Device query documentation states the requirement directly. Device query supports Windows devices that are managed by Intune and marked as corporate owned, and that are Microsoft Entra joined or Microsoft Entra hybrid joined.

Context: Device query for multiple devices carries the same ownership gate. Its prerequisites say the feature supports devices that are managed by Intune and marked as corporate owned, and adds that Windows devices must have a properties catalog policy deployed to collect inventory data. A personal label therefore removes a device from both the single-device and the fleet-wide query surface at once.

Ownership also drives targeting. Intune assignment filters expose a deviceOwnership property. You select Personal, Corporate, or unknown values using the -eq and -ne operators, and it applies to Windows along with every other supported platform. A filter written as (device.deviceOwnership -eq "Corporate") will silently skip a mislabelled laptop. If you use ownership filters to scope security baselines or update rings, a wrong label is a policy gap, not a reporting nuisance.

Finally, ownership gates enrolment itself. Intune supports a device platform restriction that blocks personally owned devices for Android, iOS/iPadOS, macOS and Windows. On Windows, if you block personally owned devices from enrolment, Intune checks to make sure that each new Windows enrolment request has been authorised for corporate enrolment, and unauthorised enrolments are blocked. So the ownership decision is not only about what you can see afterwards. It can be the difference between enrolling and being turned away.

Why it happens: ownership is decided by route, not by intent

Here is the mechanism. Intune does not ask you whether a device is corporate. It infers ownership from the enrolment route at the moment the device enrols, and then it stores the answer. Microsoft lists the routes that automatically receive corporate-owned status during enrolment. That list includes a device enrolment manager account on all platforms, an Apple device enrolment program on iOS and iPadOS, Windows Autopilot, co-management with Intune and Group Policy, Azure Virtual Desktop, automatic mobile device management enrolment via a provisioning package, Knox Mobile Enrollment, and the Android Enterprise and Android Open Source Project corporate-owned modes.

Then comes the sentence that explains most of the surprises. Microsoft Intune marks devices that register with Microsoft Entra as personal. Registration, not join. A workplace-joined device, a device that came in through Add Work Account from Windows Settings, a device enrolled with the MDM enrolment only option, a device enrolled through the Intune Company Portal app, and a device enrolled when a user selected Allow my organization to manage my device during sign-in to a Microsoft 365 app all land on personal.

The Autopilot side is unambiguous in the other direction. The Windows Autopilot registration overview states that Windows Autopilot registered devices are registered as corporate owned devices. The same page warns you not to register Microsoft Entra registered devices, also known as workplace joined devices, or Intune MDM-only enrolment devices, as Autopilot devices. Those options are intended for users to join personally owned devices. If a device is already one of those two types, you have to remove it from Microsoft Intune and Microsoft Entra ID before registering it with Autopilot.

That is exactly how the anomaly is born. A laptop is workplace joined or Company Portal enrolled first, picks up a personal label, and is later added to the Autopilot device list by serial number. The Autopilot record now says the hardware is a corporate asset. The Intune device record still says personal, because ownership was stamped at the earlier enrolment and nothing since has changed it.

Gotcha: There is no Group Policy setting and no configuration service provider node for device ownership. It is a service-side property on the Intune device record, not client-side state you can push. Any remediation script that tries to set ownership on the device is fixing the wrong layer. The only supported change is in the admin center, or through a Graph update on the managedDevice object.

Corporate identifiers, and why Windows is a different story

Microsoft's answer to pre-declaring ownership is the corporate device identifiers feature. You upload identifiers ahead of time, and when a device with a matching identifier enrols, Intune marks it as corporate. Three identifier types are supported: IMEI, serial number, and the combination of serial number, manufacturer and model, which is Windows only. The feature is documented for Android, iOS/iPadOS and Windows, and the per-platform support matters more than most write-ups admit.

PlatformSupported identifierDocumented condition
Windows 11Serial number, model and manufacturer onlyWindows 11 version 22H2 and later with KB5035942, OS builds 22621.3374 and 22631.3374
Windows 10Serial number, model and manufacturer onlyWindows 10 version 22H2 and later with KB5039299, OS build 19045.4598
iOS/iPadOSIMEI in some cases, or serial numberMicrosoft recommends using a serial number for iOS and iPadOS identification when possible
macOSSerial numberSupported
Android device administratorIMEI or serial numberSupported with Android 9 and earlier
Android Enterprise personally owned work profileIMEI or serial numberSupported with Android 11 and earlier

Note what is absent. IMEI is not supported on Windows, and neither is a bare serial number. On Windows you must supply all three of manufacturer, model and serial number, and Intune marks devices that match all three identifiers as corporate-owned. The CSV rows look like Lenovo,thinkpad t14,02234567890123, and periods must be removed from the serial number.

Watch out: The Windows blast radius is tenant-wide. Microsoft documents that after you add Windows corporate identifiers, Intune marks devices that match all three identifiers as corporate-owned, and marks all other enrolling devices in your tenant as personal. Anything you exclude from the list is marked personal at enrolment time. Uploading a partial list to try the feature on a pilot group therefore changes the outcome for the rest of your enrolling Windows estate, not just the pilot.

And here is the limitation that catches almost everyone. On Windows, corporate identifiers only apply at enrolment time. They do not determine ownership type in Intune after enrolment. Microsoft's own guidance is to read the Without corporate identifiers column of its enrolment table to learn which devices remain corporate or personal in your tenant for the long term. In other words, on Windows the feature behaves mainly as an enrolment-restriction gate rather than a durable ownership assignment. Existing Windows logic determines the final state in Intune, and to change the ownership type you have to manually adjust it in the admin center.

The documented example makes this concrete. A device with matching corporate identifiers that enrols using the Add Work Account option from Windows Settings is marked corporate-owned only at enrolment time. Intune treats it as a corporate device for the enrolment restriction evaluation, and after that the device appears as a personal device in the admin center.

Tip: Deleting a corporate identifier for an enrolled device doesn't change the device's ownership. Cleaning up a bad CSV upload does not undo the labels it produced. Treat the identifier list as a one-way door, and audit the resulting ownership afterwards rather than assuming the upload is self-correcting.

The practical file limits are worth writing down before you build a CSV. You can add up to 5,000 rows or 5 MB of data per file, whichever comes first, with no headers, and only one type of corporate identifier per file. Device details after each identifier are limited to 128 characters and are for administrative use only, and Windows currently doesn't support device details in CSV files. In the admin center you can upload up to 10 CSV files for Windows corporate identifiers, and beyond that Microsoft recommends using PowerShell or the Microsoft Intune Graph API. To add identifiers at all you need either the Policy and Profile Manager built-in Intune role, or the Intune Administrator Entra role.

How to verify: read the property, then cross-check Autopilot

Verification has three layers: the portal, the Graph property, and the device itself. Do them in that order, because the portal tells you what Intune believes and Graph tells you why.

Start in the console. The ownership field lives on each device record.

intune.microsoft.comDevicesAll devicesselect a deviceProperties

The Autopilot registration list is somewhere else entirely, and this separation is the root of the confusion. Microsoft notes that devices listed under Windows devices are not the same as Windows Autopilot devices, and that an Autopilot device is only added to the Windows devices list once registration succeeds and a licensed user has signed in on the device.

intune.microsoft.comDevices › EnrollmentWindows › Windows AutopilotDevices
Microsoft Intune admin center — device properties (illustrative)
Device nameCONTOSO-W11-0417
Management nameCONTOSO-W11-0417_Windows
OwnershipPersonal
Enrollment profile name(blank)
Join typeMicrosoft Entra registered
Autopilot registrationPresent

That card is the anomaly in one screen. The Autopilot service holds a registration for the hardware, and the Intune device record says personal. Two systems, two answers, one laptop.

Read it from Graph, where the values are unambiguous

The portal renders the label as Corporate or Personal. The API is more precise. On the managedDevice resource, managedDeviceOwnerType is documented as the ownership of the device, which can be company or personal, and the possible values are unknown, company and personal. That third value is the one that surprises people. Unknown is not corporate, so a device sitting on unknown falls outside every corporate-only feature.

The companion property is deviceEnrollmentType, which tells you the route. Its documented values include windowsAzureADJoin, windowsCoManagement, windowsBulkAzureDomainJoin, windowsBulkUserless, windowsAutoEnrollment, windowsAzureADJoinUsingDeviceAuth, deviceEnrollmentManager and userEnrollment. Read ownership and enrolment type together and the story usually explains itself.

PowerShell — Microsoft Graph, read-only scopes
Connect-MgGraph -Scopes 'DeviceManagementManagedDevices.Read.All','DeviceManagementServiceConfig.Read.All' -NoWelcome # Least privilege. Both scopes are Read.All, so nothing here can change a record. $base = 'https://graph.microsoft.com/v1.0/deviceManagement/managedDevices' $q = "?" + '$filter' + "=operatingSystem eq 'Windows'" Invoke-MgGraphRequest -Method GET -Uri ($base + $q) -OutputType PSObject | Select-Object -ExpandProperty value | Group-Object managedDeviceOwnerType, deviceEnrollmentType | Sort-Object Count -Descending | Format-Table Count, Name -AutoSize # Healthy: an Autopilot estate clusters on company + windowsAzureADJoin. # Suspicious: any 'personal' bucket sitting on a join-based enrolment type. # Also suspicious: any 'unknown' bucket at all, on any route.

Now cross-reference. The Autopilot registration list is its own Graph collection, reached with GET /deviceManagement/windowsAutopilotDeviceIdentities, which requires DeviceManagementServiceConfig.Read.All. Each windowsAutopilotDeviceIdentity carries serialNumber, manufacturer, model, groupTag, managedDeviceId, azureActiveDirectoryDeviceId and an enrollmentState whose documented values are unknown, enrolled, pendingReset, failed and notContacted. Join the two lists on managedDeviceId first and fall back to a normalised serial number. Any Autopilot-registered device whose ownership is not company is a finding.

That is exactly what the companion script does. It performs GET requests only, aborts rather than reporting a misleadingly clean result if any page fails, and prompts before installing anything.

PowerShell — Get-DeviceOwnershipAudit.ps1 (illustrative output, not a real tenant)
PS> .\Get-DeviceOwnershipAudit.ps1 Connected. Tenant: aaaaaaaa-0b0b-1c1c-2d2d-333333333333 managedDevices: page 1 read, running total 493 autopilotDeviceIdentities: page 1 read, running total 461 [HIGH] Autopilot registered but marked PERSONAL -- 3 device(s) DeviceName Serial Ownership EnrollmentType AutopilotMatch ---------- ------ --------- -------------- -------------- CONTOSO-W11-0417 SN-A1B2C3 personal windowsAutoEnrollment serialNumber CONTOSO-W11-0912 SN-D4E5F6 personal userEnrollment serialNumber CONTOSO-W11-1130 SN-G7H8I9 personal windowsAutoEnrollment managedDeviceId # All three enrolled by a personal route BEFORE the Autopilot record existed. [MEDIUM] Ownership is UNKNOWN -- 1 device(s) [LOW] Autopilot record says ENROLLED but no Intune device found -- 2 device(s) # The LOW rows are stale Autopilot records: deleted from Intune, never deregistered.

Layer three: what the device itself can tell you

Ownership is not stored on the client. The Autopilot profile state is, and that answers a different but related question: was this machine ever actually provisioned by Autopilot? Microsoft documents the location. Windows Autopilot profile settings received from the deployment service are stored in the device's registry under this key.

HKLM\SOFTWARE\Microsoft\Provisioning\Diagnostics\Autopilot
ValueWhat Microsoft documents it holdsHow to read it during an ownership audit
CloudAssignedTenantDomainThe Microsoft Entra tenant the device is registered with. If the device isn't registered with Windows Autopilot, this value is blank.Blank on a device you believed was Autopilot-provisioned means it was not.
CloudAssignedTenantIdThe GUID of the Entra tenant the device registered with, corresponding to the tenant domain above. Blank if the device isn't registered with Autopilot.Confirms which tenant claimed the hardware.
AadTenantIdThe GUID of the Entra tenant the user signed into. The user receives an error if this entry doesn't match the tenant used to register the device.A mismatch here is a registration problem, not an ownership one.
IsAutopilotDisabledIf set to 1, indicates the device isn't registered with Windows Autopilot. Can also indicate the profile couldn't be downloaded because of network connectivity, firewall issues, or timeouts.A value of 1 alongside a personal ownership label is the classic mislabelled-device signature.
TenantMatchedSet to 1 if the user's tenant ID matches the tenant ID the device was registered with. If 0, the user is shown an error and forced to start over.A value of 0 means the Autopilot flow never completed for that user.
CloudAssignedOobeConfigA bitmap showing which Autopilot settings were configured. Documented values are SkipCortanaOptIn = 1, OobeUserNotLocalAdmin = 2, SkipExpressSettings = 4, SkipOemRegistration = 8, SkipEula = 16.Non-zero shows a real profile was applied, not merely that a registration record exists.
Registry Editor — illustrative view of a mislabelled device
▼ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Provisioning
▼ Diagnostics
▼ Autopilot
CloudAssignedTenantDomain  REG_SZ  (value not set)
CloudAssignedTenantId      REG_SZ  (value not set)
IsAutopilotDisabled        REG_DWORD  0x00000001 (1)
TenantMatched              REG_DWORD  0x00000000 (0)

The event log is the other client-side witness. Autopilot writes to a dedicated channel, and Microsoft publishes the event catalogue for it.

Applications and Services Logs > Microsoft > Windows > ModernDeployment-Diagnostics-Provider > Autopilot
Event IDTypeDocumented meaning
100WarningAutopilot policy not found. Typically a temporary problem while the device waits for a profile to be downloaded.
101InfoAutopilotGetPolicyDwordByName succeeded. Autopilot is retrieving and processing numeric OOBE settings.
103InfoAutopilotGetPolicyStringByName succeeded. Autopilot is processing OOBE setting strings such as the Entra tenant name.
109InfoAutopilotGetOobeSettingsOverride succeeded. State-related OOBE settings are being processed.
111InfoAutopilotRetrieveSettings succeeded. The profile settings that control OOBE behaviour were retrieved.
153InfoAutopilotManager reported the state changed. Usually ProfileState_Unknown to ProfileState_Available, meaning a profile was downloaded and the device is ready to deploy.
160InfoAutopilotRetrieveSettings beginning acquisition. Autopilot is preparing to download the profile settings.
161InfoAutopilotManager retrieve settings succeeded. The Autopilot profile was downloaded successfully.
163InfoDownload isn't required and the device is already provisioned. Clean or reset the device to change this.
164InfoAutopilotManager determined the internet is available to attempt a policy download.
171ErrorFailed to set TPM identity confirmed. Indicates a TPM attestation problem needed to complete self-deploying mode.
172ErrorFailed to set the Autopilot profile as available. Typically related to event 171.
807ErrorZtdDeviceIsNotRegistered. Validate that the hardware hash was uploaded and that a deployment profile is assigned.
809ErrorZtdDeviceHasNoAssignedProfile, assigned profile does not exist. The assigned profile was deleted without cleanup.
815ErrorZtdDeviceHasNoAssignedProfile, no profile assigned to the device and no default profile found in the tenant.
908ErrorSerialNumberMismatch or ProductKeyIdMismatch. A mismatch between the recorded serial or product key and the physical hardware.
Event Viewer — ModernDeployment-Diagnostics-Provider, Autopilot channel (illustrative)
Level
Event ID
Summary
Warning
100
Autopilot policy not found
Information
160
AutopilotRetrieveSettings beginning acquisition
Error
807
ZtdDeviceIsNotRegistered
Information
163
Device already provisioned, download not required
Error
908
SerialNumberMismatch

The fix: correct the label, then close the route

Fixing a single device is a short click path, and Microsoft documents it as the supported way to edit a device's identification after enrolment.

  1. Sign in to the Microsoft Intune admin center.
  2. Go to Devices and then All devices.
  3. Select the device you want to correct.
  4. Choose Properties.
  5. For Device ownership, select Personal or Corporate.
  6. Save, then confirm the value on the device overview blade.
intune.microsoft.comDevices › All devicesPropertiesDevice ownership

Before you flip anything in the other direction, read the consequence. When you change a device's ownership type from corporate to personal, Intune deletes all app information previously collected from that device within seven days. If applicable, Intune also deletes the phone number on record. Intune still collects the inventory of apps installed by the IT admin on the device, and a partial phone number. On iOS, iPadOS and Android, changing ownership from personal to corporate sends a push notification through the Company Portal app to inform the device user of the change.

Then close the route that produced the wrong label in the first place. If personally routed enrolments should not be happening on Windows at all, the enrolment platform restriction is the durable control. Microsoft documents this restriction as living under Device onboarding.

  1. In the admin center, go to Devices, then Device onboarding, then Enrollment.
  2. Select Device platform restriction.
  3. Open the restriction policy you want to change, then choose Properties.
  4. Select Edit next to Platform settings.
  5. For the Windows platform, set Personally owned devices to Block.
  6. Select Review + save, then confirm the policy is assigned to the right groups.
intune.microsoft.comDevices › Device onboardingEnrollmentDevice platform restriction

Two documented caveats decide whether that restriction will actually help you. First, Microsoft states plainly that enrolment restrictions are not security features, that compromised devices can misrepresent their character, and that these restrictions are a best-effort barrier for non-malicious users. Second, restrictions are applied to enrolments that are user-driven. For enrolment scenarios that are not user-driven, Intune enforces the default policy. That list explicitly includes Autopilot self-deploying mode and Autopilot for pre-provisioned deployment, bulk enrolment via Windows Configuration Designer, co-managed enrolments, userless Apple automated device enrolment, Azure Virtual Desktop and Windows 365.

There is one more wrinkle worth knowing. Microsoft documents that Intune marks devices enrolling through automatic MDM enrolment with Entra join during Windows setup, Entra join from Windows Settings, or Entra join and hybrid join via Autopilot for existing devices as corporate-owned, and blocks them from enrolling unless registered with Windows Autopilot, because those methods do not offer the Intune administrator per-device control. So a personal-device block can turn away devices that are corporate by label.

To confirm a block is doing its job, go to Devices and then Enrollment failures and look in the table under Failure reason. A blocked personal enrolment appears as Enrollment restriction not met, and selecting the reason opens the failure details.

Proof it worked: a clean audit and a corporate-only feature that runs

Do not accept the portal turning a red pill green as proof. Prove it with the same cross-reference you used to find the problem, then prove it functionally by exercising a capability that only works on corporate-owned devices.

PowerShell — re-run after remediation (illustrative output)
PS> .\Get-DeviceOwnershipAudit.ps1 [HIGH] Autopilot registered but marked PERSONAL -- 0 device(s) None found. [HIGH] Enrollment route implies CORPORATE but marked PERSONAL -- 0 device(s) None found. [MEDIUM] Ownership is UNKNOWN -- 0 device(s) None found. [INFO] Ownership by deviceEnrollmentType EnrollmentType Ownership Devices -------------- --------- ------- windowsAutoEnrollment company 412 windowsAzureADJoin company 63 windowsCoManagement company 18 # The tell: no 'personal' or 'unknown' row survives against a join-based route. Summary Windows devices audited : 493 HIGH Autopilot registered, marked personal : 0 No high severity ownership mismatches found in the data that was successfully read. # Illustrative output. The numbers are examples, not a real tenant.

The functional test is Device query. It is documented as requiring a device that is managed by Intune and marked as corporate owned, so a successful single-device query is direct evidence that the ownership label has taken effect. Open the device, select Device query under the Monitor section, and run something trivial such as a query against the OsVersion entity. If it returns rows, the corporate gate has opened. Remember the documented dependency though: Windows Push Notification Services is the transport mechanism, and if it is blocked or unavailable the device query will fail for reasons that have nothing to do with ownership.

intune.microsoft.comDevices › Windowsselect deviceMonitor › Device query

The second functional check is an assignment filter. Create a filter using (device.deviceOwnership -eq "Corporate"), attach it to a harmless report-only assignment, and confirm the previously mislabelled devices now appear in scope. That closes the loop on the failure mode that actually hurts, which is policy silently skipping devices you believed you were covering.

One last thing worth internalising while you are in this area. Ownership also shapes how aggressively you should wipe. The Wipe documentation warns that the option to wipe a device and continue wiping even if the device loses power, backed by the doWipeProtected node of the RemoteWipe configuration service provider, can prevent some devices from starting up again. Microsoft's guidance is to use it only on corporate-owned devices where full data destruction is required and recovery procedures are in place. Get the ownership label right and that guidance is actionable. Get it wrong and you are making destructive decisions against a record that does not describe reality.

Community deep dives worth reading

AuthorArticleWhy it is useful here
Peter van der WoudeUnderstanding corporate identifiers for Windows devicesWalks the Windows manufacturer, model and serial number identifier flow end to end, including gathering the values with PowerShell and uploading the CSV.
Rudy OomsMDM vs. MAM: Personal vs. Corporate Intune DevicesExplains how the MDM and MAM user scopes interact with the personal versus corporate outcome on Windows, which is the route-level cause of most mislabelled devices.

References

Companion script: Get-DeviceOwnershipAudit.ps1. Read-only and GET-only, it cross-references Autopilot registrations against managedDevice ownership and refuses to report a clean result after a failed query.

PowerShell — companion script

Download it from Imran76Awan/Windows-Autopilot-Scripts — no sign-in required. It is read-only: it reports and never changes a device or anything in Intune. Validate it in your own environment before relying on the output.

Get-DeviceOwnershipAudit.ps1 — Read-only audit of Windows device ownership in Microsoft Intune. Finds devices whose
View all scripts on GitHub
Was this post helpful?
React below — no account needed
Share this post
LinkedIn X / Twitter Reddit Bluesky

More from EndpointWeekly

Autopilot
The Autopilot Conditional Access deadlock: requiring a compliant…
A brand-new Autopilot device cannot be compliant before it is enrolled, so a Conditional…
Autopilot
Enrollment Configuration Priority: Why Your Second ESP Profile…
Device configuration profiles merge. Device enrollment configurations do not. Exactly one…
Autopilot
Autopilot Language, Region and Keyboard: The Profile Skips a…
You set Language (Region) in the Autopilot profile, the OOBE screens disappear, and the…