WMI Query Machine Model: Find the Make and Model of a Device

WMI can tell you the exact make and model of a machine, which is handy for OSD task sequence conditions (applying model-specific drivers or BIOS settings) or for auditing hardware for a Group Policy or SCCM targeting rule. Get the Model wmic ComputerSystem get Model Get the Manufacturer wmic ComputerSystem get Manufacturer Run both from […]

Find The Make And Model Name Of A Machine Using WMI
WMI can tell you the exact make and model of a machine, which is handy for OSD task sequence conditions (applying model-specific drivers or BIOS settings) or for auditing hardware for a Group Policy or SCCM targeting rule.

Get the Model

wmic ComputerSystem get Model

Get the Manufacturer

wmic ComputerSystem get Manufacturer
Run both from a standard Command Prompt — no elevation required. If you’re on a newer Windows build where wmic has been removed, the PowerShell equivalent is:
Get-CimInstance Win32_ComputerSystem | Select-Object Manufacturer, Model
Both approaches query the same underlying WMI class (Win32_ComputerSystem), so the values returned are identical — use whichever tool is available on the machine you’re working on.

Getting the serial number and asset tag too

Make and model alone often isn’t enough for asset management or a support ticket — the serial number pins down the exact physical unit. That lives on a different WMI class, Win32_BIOS, not Win32_ComputerSystem:
Get-CimInstance Win32_BIOS | Select-Object SerialNumber
or via the older command-line tool: wmic bios get serialnumber. On machines with an asset tag set in BIOS/UEFI, that’s available too, from Win32_SystemEnclosure:
Get-CimInstance Win32_SystemEnclosure | Select-Object SMBIOSAssetTag
Not every OEM populates the asset tag field by default — it’s often blank unless your organisation (or the OEM, for pre-configured fleet orders) has explicitly set it, so don’t be surprised if this one comes back empty on a stock machine.

Using this in an OSD task sequence

For applying model-specific drivers or BIOS settings during OSD, most task sequence engines (ConfigMgr included) can read these same WMI values directly as task sequence variables without you needing to run the commands manually — check your task sequence’s built-in variables (typically prefixed _SMSTSMake / _SMSTSModel in ConfigMgr) before scripting a custom WMI query step, since the values are usually already populated for you at that point in the sequence.

Resources

🛠️

Gear We Recommend

A few general tech accessories worth having alongside this.

Browse our General Tech Accessories picks on Amazon

As an Amazon Associate, TechyGeeksHome earns from qualifying purchases.


Discover more from TechyGeeksHome

Subscribe to get the latest posts sent to your email.

Andrew Armstrong

Andrew Armstrong is a UK-based IT professional with 26+ years of hands-on experience in Windows, Windows Server, SCCM/ConfigMgr, Active Directory, PowerShell, and enterprise infrastructure.

He founded TechyGeeksHome in 2010 and has published over 1,500 practical guides covering real-world IT problems and solutions. When not solving IT problems,

Andrew develops free Windows utilities including Ultimate Settings Panel, which has been downloaded over 850,000 times.