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.
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.
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.
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.
| Platform | Supported identifier | Documented condition |
|---|---|---|
| Windows 11 | Serial number, model and manufacturer only | Windows 11 version 22H2 and later with KB5035942, OS builds 22621.3374 and 22631.3374 |
| Windows 10 | Serial number, model and manufacturer only | Windows 10 version 22H2 and later with KB5039299, OS build 19045.4598 |
| iOS/iPadOS | IMEI in some cases, or serial number | Microsoft recommends using a serial number for iOS and iPadOS identification when possible |
| macOS | Serial number | Supported |
| Android device administrator | IMEI or serial number | Supported with Android 9 and earlier |
| Android Enterprise personally owned work profile | IMEI or serial number | Supported 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.
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.
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.
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.
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.
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.
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.
| Value | What Microsoft documents it holds | How to read it during an ownership audit |
|---|---|---|
CloudAssignedTenantDomain | The 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. |
CloudAssignedTenantId | The 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. |
AadTenantId | The 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. |
IsAutopilotDisabled | If 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. |
TenantMatched | Set 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. |
CloudAssignedOobeConfig | A 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. |
The event log is the other client-side witness. Autopilot writes to a dedicated channel, and Microsoft publishes the event catalogue for it.
| Event ID | Type | Documented meaning |
|---|---|---|
| 100 | Warning | Autopilot policy not found. Typically a temporary problem while the device waits for a profile to be downloaded. |
| 101 | Info | AutopilotGetPolicyDwordByName succeeded. Autopilot is retrieving and processing numeric OOBE settings. |
| 103 | Info | AutopilotGetPolicyStringByName succeeded. Autopilot is processing OOBE setting strings such as the Entra tenant name. |
| 109 | Info | AutopilotGetOobeSettingsOverride succeeded. State-related OOBE settings are being processed. |
| 111 | Info | AutopilotRetrieveSettings succeeded. The profile settings that control OOBE behaviour were retrieved. |
| 153 | Info | AutopilotManager reported the state changed. Usually ProfileState_Unknown to ProfileState_Available, meaning a profile was downloaded and the device is ready to deploy. |
| 160 | Info | AutopilotRetrieveSettings beginning acquisition. Autopilot is preparing to download the profile settings. |
| 161 | Info | AutopilotManager retrieve settings succeeded. The Autopilot profile was downloaded successfully. |
| 163 | Info | Download isn't required and the device is already provisioned. Clean or reset the device to change this. |
| 164 | Info | AutopilotManager determined the internet is available to attempt a policy download. |
| 171 | Error | Failed to set TPM identity confirmed. Indicates a TPM attestation problem needed to complete self-deploying mode. |
| 172 | Error | Failed to set the Autopilot profile as available. Typically related to event 171. |
| 807 | Error | ZtdDeviceIsNotRegistered. Validate that the hardware hash was uploaded and that a deployment profile is assigned. |
| 809 | Error | ZtdDeviceHasNoAssignedProfile, assigned profile does not exist. The assigned profile was deleted without cleanup. |
| 815 | Error | ZtdDeviceHasNoAssignedProfile, no profile assigned to the device and no default profile found in the tenant. |
| 908 | Error | SerialNumberMismatch or ProductKeyIdMismatch. A mismatch between the recorded serial or product key and the physical hardware. |
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.
- Sign in to the Microsoft Intune admin center.
- Go to Devices and then All devices.
- Select the device you want to correct.
- Choose Properties.
- For Device ownership, select Personal or Corporate.
- Save, then confirm the value on the device overview blade.
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.
- In the admin center, go to Devices, then Device onboarding, then Enrollment.
- Select Device platform restriction.
- Open the restriction policy you want to change, then choose Properties.
- Select Edit next to Platform settings.
- For the Windows platform, set Personally owned devices to Block.
- Select Review + save, then confirm the policy is assigned to the right groups.
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.
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.
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
| Author | Article | Why it is useful here |
|---|---|---|
| Peter van der Woude | Understanding corporate identifiers for Windows devices | Walks the Windows manufacturer, model and serial number identifier flow end to end, including gathering the values with PowerShell and uploading the CSV. |
| Rudy Ooms | MDM vs. MAM: Personal vs. Corporate Intune Devices | Explains 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
- Add corporate identifiers to Intune — supported identifier types per platform, CSV limits, the Windows enrolment-time-only limitation, the ownership-by-enrolment-type table, and the documented steps to change device ownership.
- managedDevice resource type, Microsoft Graph v1.0 —
managedDeviceOwnerTypewith the values unknown, company and personal, plus the fulldeviceEnrollmentTypeenumeration. - windowsAutopilotDeviceIdentity resource type and List windowsAutopilotDeviceIdentities — the Autopilot registration properties, the enrollmentState values, and the
DeviceManagementServiceConfig.Read.Allscope. - Windows Autopilot registration overview — the statement that Windows Autopilot registered devices are registered as corporate owned devices, and the warning against registering Entra registered or MDM-only devices.
- What info can your organization see when you enroll your device? — the documented personal versus corporate differences for phone number, app inventory and location, plus the corporate-only Windows device details.
- Device query and Device query for multiple devices — the marked as corporate owned prerequisite, and the WNS transport dependency.
- Overview of enrollment restrictions — blocking personally owned Windows devices, which enrolment methods are authorised for corporate enrolment, and the non-user-driven limitation.
- Assignment filter properties and operators reference — the
deviceOwnershipfilter property, its Personal, Corporate and unknown values, and the supported operators. - Windows Autopilot troubleshooting FAQ — the Provisioning Diagnostics Autopilot registry values and the full Autopilot Event Viewer catalogue.
- Device action: Wipe — the RemoteWipe CSP nodes behind each wipe option, and the corporate-owned-only guidance for
doWipeProtected.
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.
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.