How to Check Your PC Specs in Windows 10 and 11

5 min read

Find your CPU, RAM, GPU, storage, and motherboard specs in Windows without opening the case. Using System Information, Task Manager, PowerShell, and free tools.

Need to know your PC specs before buying RAM, updating drivers, or checking compatibility? Here's how to find every hardware detail without opening the case.


Quick Overview: System Information

Win + Rmsinfo32

Shows everything in one place: CPU, RAM, motherboard, BIOS version, Windows edition, and more. Useful for a quick snapshot.

Or the fastest way: Win + ISystemAbout — shows basic specs at a glance.


CPU Details

Get-WmiObject Win32_Processor | Select-Object Name, NumberOfCores, NumberOfLogicalProcessors, MaxClockSpeed

# Output example:
# Name                  : Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz
# NumberOfCores         : 8
# NumberOfLogicalProcessors: 16
# MaxClockSpeed         : 3800

Or: Ctrl + Shift + EscPerformanceCPU — shows model, cores, speed, and cache.


RAM Amount and Speed

# Total RAM
(Get-WmiObject Win32_ComputerSystem).TotalPhysicalMemory / 1GB

# Per-stick details (manufacturer, speed, capacity)
Get-WmiObject Win32_PhysicalMemory |
  Select-Object Manufacturer, PartNumber,
    @{n='GB';e={$_.Capacity/1GB}},
    @{n='MHz';e={$_.Speed}},
    DeviceLocator

DeviceLocator shows which slot each stick is in (DIMM_A1, DIMM_B1, etc.).

Task Manager → Performance → Memory: shows current usage, speed, slots used, and form factor.


GPU (Graphics Card)

Get-WmiObject Win32_VideoController |
  Select-Object Name, AdapterRAM, DriverVersion, VideoModeDescription

Or: Win + RdxdiagDisplay tab — shows GPU name, VRAM, and driver version.

Task Manager → Performance → GPU: shows real-time usage, VRAM, and temperature (Windows 11).


Storage Drives

# All drives with size and type
Get-PhysicalDisk | Select-Object FriendlyName, MediaType, Size |
  ForEach-Object {
    [PSCustomObject]@{
      Name = $_.FriendlyName
      Type = $_.MediaType
      'Size GB' = [math]::Round($_.Size/1GB,0)
    }
  }

# Partitions and drive letters
Get-Partition | Select-Object DriveLetter, Size, Type |
  Where-Object {$_.DriveLetter} |
  ForEach-Object {[PSCustomObject]@{
    Letter = $_.DriveLetter
    'Size GB' = [math]::Round($_.Size/1GB,0)
    Type = $_.Type
  }}

Motherboard and BIOS

# Motherboard
Get-WmiObject Win32_BaseBoard | Select-Object Manufacturer, Product, Version

# BIOS version and date
Get-WmiObject Win32_BIOS | Select-Object Manufacturer, Name, SMBIOSBIOSVersion, ReleaseDate

Network Adapters

Get-NetAdapter | Select-Object Name, InterfaceDescription, MacAddress, LinkSpeed, Status

Battery (Laptops)

# Battery capacity and health
Get-WmiObject Win32_Battery |
  Select-Object Name, EstimatedChargeRemaining, BatteryStatus,
    @{n='DesignCapacity(mWh)';e={$_.DesignCapacity}},
    @{n='FullCapacity(mWh)';e={$_.FullChargeCapacity}}

For detailed battery history:

powercfg /batteryreport
start "$env:USERPROFILE\battery-report.html"

All Specs in One Script

Write-Host "=== System Specs ===" -ForegroundColor Cyan

$cpu = Get-WmiObject Win32_Processor | Select-Object -First 1
Write-Host "CPU: $($cpu.Name)"
Write-Host "Cores: $($cpu.NumberOfCores) / Threads: $($cpu.NumberOfLogicalProcessors)"

$ram = (Get-WmiObject Win32_ComputerSystem).TotalPhysicalMemory / 1GB
Write-Host "RAM: $([math]::Round($ram,1)) GB"

$gpu = Get-WmiObject Win32_VideoController | Select-Object -First 1
Write-Host "GPU: $($gpu.Name)"

$os = Get-WmiObject Win32_OperatingSystem
Write-Host "OS: $($os.Caption) Build $($os.BuildNumber)"

$board = Get-WmiObject Win32_BaseBoard
Write-Host "Motherboard: $($board.Manufacturer) $($board.Product)"

Get-PhysicalDisk | ForEach-Object {
  Write-Host "Drive: $($_.FriendlyName) — $([math]::Round($_.Size/1GB,0)) GB ($($_.MediaType))"
}

Free Tools for More Detail

CPU-Z — detailed CPU, motherboard, RAM, and GPU info including XMP profiles and timings. Download from cpuid.com/softwares/cpu-z.html

GPU-Z — detailed GPU info including VRAM type, memory bandwidth, and sensor data. From techpowerup.com/gpuz

HWiNFO64 — comprehensive real-time sensor monitoring. Temperatures, voltages, fan speeds for every component.


Summary

For a quick overview: msinfo32 or Win + I → About. For detailed specs: PowerShell Get-WmiObject commands above. For RAM slot info: Task Manager → Performance → Memory. For full hardware detail with sensors: HWiNFO64 is the most complete free tool available.

Related articles

← All articles