How to Check RAM Speed on Windows, Linux and Mac

On Windows, open Task Manager (Ctrl+Shift+Esc), go to Performance > Memory and read Speed; for per-module detail run Get-CimInstance Win32_PhysicalMemory | Select-Object Speed, ConfiguredClockSpeed in PowerShell. On Linux run sudo dmidecode --type 17, and on a Mac run system_profiler SPMemoryDataType.

The number that matters is the speed the memory is currently running at, which is often lower than the rated speed on the label. The commands below show both.

Check RAM speed in Task Manager (Windows 10 and 11)

  1. Press Ctrl+Shift+Esc to open Task Manager. If it opens in the small view, click More details.
  2. Select Performance, then Memory.
  3. Read Speed in the details under the graph. Depending on the Windows version the unit is shown as MHz or MT/s; the number means the same thing (see the MT/s section below).

The same panel shows Slots used (for example 2 of 4) and Form factor (DIMM for desktops, SODIMM for most laptops), which you need before buying more RAM. Task Manager shows one speed for the whole system; for the rated speed of each module, use PowerShell.

Check RAM speed with PowerShell (rated vs actual)

Get-CimInstance Win32_PhysicalMemory | Select-Object DeviceLocator, Manufacturer, PartNumber, Capacity, Speed, ConfiguredClockSpeed | Format-Table -AutoSize

Real output from a laptop with two 32 GB modules:

DeviceLocator                Manufacturer PartNumber              Capacity Speed ConfiguredClockSpeed
-------------                ------------ ----------              -------- ----- --------------------
Controller0-ChannelA/B-DIMM0 Kingston     KF556S40-32          34359738368  5600                 5200
Controller1-ChannelA/B-DIMM0 Kingston     KF556S40-32          34359738368  5600                 5200
  • Speed is the module's rated maximum, here 5600, matching the "556" in the part number.
  • ConfiguredClockSpeed is what the system has actually set the memory to: 5200. This is the figure Task Manager shows.
  • Capacity is in bytes: 34,359,738,368 bytes is 32 GiB.

So this machine's RAM is rated for 5600 MT/s but running at 5200 MT/s, about 7% below its label. Why that happens, and whether you can fix it, is covered below.

A note on units: Microsoft's documentation for Win32_PhysicalMemory labels Speed as "nanoseconds" and ConfiguredClockSpeed as "megahertz". On current hardware both values come from the firmware's SMBIOS memory table and read as transfer rates, as the 5600 above shows; treat them as MT/s.

To see which DDR generation you have, add SMBIOSMemoryType to the property list. It's a raw code from the SMBIOS table: 26 (0x1A) is DDR4 and 34 (0x22) is DDR5, the codes the dmidecode tool uses to print those names. The machine above reports 34.

Using wmic (older Windows)

wmic memorychip get devicelocator, speed, configuredclockspeed

This prints the same two speeds. Microsoft deprecated WMIC in Windows 10 version 21H1, and according to Microsoft Learn it is removed by default from new installations of Windows 11 24H2 and 25H2 and, from August 2026, can no longer be added back. If you see 'wmic' is not recognized as an internal or external command, use the PowerShell command above instead; it reads the same data.

Check RAM speed on Linux: dmidecode

sudo dmidecode --type 17

Type 17 is the SMBIOS "Memory Device" record, one per slot. --type memory also works and includes the related types 5, 6 and 16. Each populated slot prints a block; the lines that matter look like this (example output):

Memory Device
	Size: 32 GB
	Form Factor: SODIMM
	Locator: Controller0-ChannelA/B-DIMM0
	Type: DDR5
	Speed: 5600 MT/s
	Manufacturer: Kingston
	Configured Memory Speed: 5200 MT/s

As on Windows, Speed is the rating and Configured Memory Speed is what it's running at. Run it with sudo so it can read the raw firmware table. To print just the speed lines:

sudo dmidecode --type 17 | grep -i speed

Check RAM speed on a Mac

system_profiler SPMemoryDataType

This prints the Memory section of the System Information app in Terminal. What it lists varies by model and macOS version: Macs with memory slots typically show size, type and speed per slot. If no speed is listed, the technical specifications page for your exact Mac model on Apple's site is the reference.

MT/s vs MHz: why some tools show half your RAM speed

DDR stands for double data rate: the memory transfers data on both the rising and falling edge of its clock, so it performs two transfers per clock cycle. DDR5-5600 therefore performs 5,600 million transfers per second on a 2,800 MHz clock. Memory makers such as Micron use MT/s for the transfer rate, but shops and BIOS menus often label the same number "MHz". If a monitoring tool reports about 2,600 MHz for memory sold as 5200, it's showing the real clock, and nothing is wrong.

Why your RAM is slower than the label

If ConfiguredClockSpeed is below Speed, or below the number on the box, the cause is usually one of these:

CauseHow to tellFix
Overclocking profile not enabledDesktop RAM sold as e.g. DDR4-3600 or DDR5-6000 runs at a noticeably lower standard speedEnable XMP (Intel) or the AMD equivalent profile in the BIOS/UEFI
CPU or chipset limitThe configured speed equals the maximum memory speed in your CPU's specificationsNone; the RAM is running as fast as the platform allows
Laptop or prebuilt firmwareNo memory settings in the BIOSUsually none; the manufacturer fixed the speed
Mixed modulesModules report different Speed valuesThe system sets one speed for all modules, so the slowest rating limits it; match them

Intel describes XMP modules as booting first "with the default JEDEC settings" and running at their advertised speed only after you enable the profile in the BIOS. Look for a setting named XMP, EXPO or "memory profile" on the memory or overclocking page. If the system becomes unstable after enabling it, go back to the default; the profile is an overclock, and not every CPU and board combination holds it.

The laptop in the PowerShell example falls in the second group. Its processor, an Intel Core i7-13700H, is specified by Intel for "Up to DDR5 5200 MT/s", so 5200 is the platform maximum and the 5600-rated modules simply have headroom the CPU can't use. Check your processor's specification page (search the exact model on intel.com or amd.com) before chasing a BIOS setting that isn't there.

For what the speed difference between memory generations means in practice, see DDR4 vs DDR5; for deciding how much memory to add, see how much RAM do I need.

Frequently asked questions

Is RAM speed measured in MHz or MT/s?
The number on the label (3200, 5600, 6000) is a transfer rate in megatransfers per second, MT/s. It is often written as MHz, but DDR memory moves data twice per clock cycle, so the actual clock is half the figure: DDR5-5600 runs at a 2,800 MHz clock. Some tools show the real clock, which is why they appear to report half your RAM speed.
Why does my RAM run slower than advertised?
Most often the memory's faster profile is not enabled. Modules sold as DDR4-3600 or DDR5-6000 start at a slower standard speed, and the advertised speed is an overclocking profile (Intel XMP or the AMD equivalent) that you switch on in the BIOS or UEFI. The CPU or motherboard may also support a lower maximum, especially with four modules installed.
Does it matter if two RAM sticks have different speeds?
They usually work together, but the system picks one speed for all installed memory, so the slowest module's rating sets the ceiling. Run the PowerShell command in this article and compare the Speed column (each module's rating) with ConfiguredClockSpeed (what they all actually run at).
Can I check RAM speed without opening the case?
Yes. Every method in this article reads the information the memory and firmware report to the operating system, so you never need to look at the module labels. On Windows, Task Manager or the PowerShell command is enough.

Sources