WindowsStorageMaintenance

How to Check SSD and Hard Drive Health on Windows

TG By The TechFix Guide Editorial Team  ·  Updated  ·  How we check our guides
An M.2 SSD held over an open laptop chassis on a repair bench, lit by a desk lamp

A drive almost never dies without warning. It logs the warning itself, in counters that Windows reads but rarely shows you: how many sectors it has already given up on, how many spare blocks are left, how hot it has been running. The trick is knowing which numbers matter, because most of what a health tool displays is either normal or completely irrelevant to whether your data is safe. This guide walks through four levels of checking, from the ten-second version to the raw counters, and ends with a rule for what to actually do about the result.

What SMART can and cannot tell you

Every modern SATA and NVMe drive keeps a Self-Monitoring, Analysis and Reporting Technology log. It records things like power-on hours, temperature history, reallocated sector counts, and for SSDs the percentage of rated write endurance already consumed. Windows exposes this through the storage stack; third-party tools read it directly.

Two limits are worth stating up front, because they explain most confusing results. First, SMART predicts some failures, not all: a drive with a clean log can still lose its controller board tomorrow. Second, the log is only as good as the bridge between you and the drive — a USB enclosure, a RAID card, or a virtual disk will often pass through zeros or nothing at all. If a tool shows a wall of zeros on a drive you know has been running for years, you are looking at the bridge, not the drive.

Step 1: The ten-second check in Settings

On Windows 11 (22H2 and later) open Settings → System → Storage → Advanced storage settings → Disks & volumes, click the drive, then Properties. Under Drive health you get a status word — typically Healthy, Warning, or Critical — and for many NVMe drives an estimated remaining life percentage.

Task Manager gives a second opinion. Press Ctrl + Shift + Esc, open the Performance tab, and select the disk. Two fields matter: Active time and Average response time. A mechanical drive sitting at 100% active time with response times above roughly 100 ms while the machine is otherwise idle is not busy, it is struggling. SSDs should sit in the low single-digit milliseconds.

These views are convenient but shallow. They will not tell you a drive is accumulating bad sectors, which is exactly the signal you want months before failure.

Step 2: Pull the counters with PowerShell

Open Terminal (Admin) from the Win+X menu and run this first:

Get-PhysicalDisk | Format-Table FriendlyName, MediaType, HealthStatus, OperationalStatus, Size -AutoSize

You should see one row per physical drive with media type SSD, HDD, or Unspecified. Unspecified usually means the drive sits behind a USB bridge. Now the useful part:

Get-PhysicalDisk | Get-StorageReliabilityCounter | Format-List *

The output includes Wear (a 0–100 scale where higher means more worn, and blank means the drive does not report it), Temperature in Celsius, PowerOnHours, StartStopCycles, and the four error counters: ReadErrorsTotal, ReadErrorsUncorrected, WriteErrorsTotal, WriteErrorsUncorrected.

How to read it: uncorrected errors are the ones that reached Windows as failures — those should be zero or near zero. Total errors that were corrected in flight are less alarming but trending upward is a hint. Power-on hours above about 30,000 (three and a half years of continuous use) on a mechanical drive means you are in the window where replacements are normal, not unusual.

Not every controller fills these fields. Samsung and WD NVMe drives generally report wear and temperature; many budget SATA SSDs and most USB bridges return blanks. That is a reporting gap, not a fault.

Step 3: Read the SMART attributes directly

For the raw picture, use CrystalDiskInfo (free, from Crystal Dew World). Download the Standard Edition ZIP rather than the installer — the installer offers optional bundled software, and the portable build avoids that entirely. Extract it and run DiskInfo64.exe as administrator so it can query every drive.

The top panel gives each drive a status: Good, Caution, or Bad, plus a temperature. The table below is where the detail lives. On a SATA drive these are the attributes worth scanning:

  • 05 Reallocated Sectors Count — sectors the drive has retired and swapped for spares. Zero is ideal. A handful that stays put is tolerable; a number that climbs between monthly checks means the surface is degrading. Above roughly 50 on a mechanical drive, start planning a replacement.
  • C5 Current Pending Sector Count — sectors the drive could not read and has not yet remapped. Any non-zero value here is a live warning: those sectors are unreadable right now.
  • C6 Uncorrectable Sector Count — pending sectors that failed the retry. Data in them is already gone.
  • C7 UDMA CRC Error Count — the SATA cable or port, not the drive. Reseat or replace the cable before blaming the disk.
  • 09 Power-On Hours and 0C Power Cycle Count — age. Useful for context, not a verdict on their own.

NVMe drives expose a different set: Percentage Used (endurance consumed), Available Spare (spare blocks left, as a percentage of the original pool), Media and Data Integrity Errors, and a Critical Warning bitmask that should read zero. Percentage Used of 60% after four years is unremarkable. Available Spare dropping below its own threshold is not.

Temperature is worth a glance while you are here. SATA SSDs typically idle between 30 and 45 °C. NVMe drives run hotter and 40–60 °C at idle is normal; sustained readings above 80 °C under load mean the drive is throttling and the airflow in your case needs attention.

Step 4: Check the file system separately

SMART describes the hardware. It says nothing about whether the file system on top of it is intact. Run these two from the same administrator terminal, in this order:

chkdsk C: /scan

The /scan switch performs an online scan without taking the volume offline — no reboot, no risk, a few minutes. If it reports problems, run chkdsk C: /f, which needs a reboot for the system drive. /r adds a surface scan and implies /f; on a large mechanical drive that can take hours, and on an SSD it is mostly wasted time because the drive handles bad blocks internally.

sfc /scannow

This repairs Windows system files, and if it reports unfixable corruption, follow with:

DISM /Online /Cleanup-Image /RestoreHealth

None of these touch flash wear. A drive can pass chkdsk perfectly and still be at 95% of its endurance rating.

Step 5: Confirm with the manufacturer's tool

Drive makers ship utilities that read vendor-specific data the generic tools cannot see, and that is the only place you can check for a firmware update: Samsung Magician, Crucial Storage Executive, Western Digital Dashboard, Seagate SeaTools, Kingston SSD Manager. Install the one that matches your drive, and look for two things — a health or life-remaining figure, and total bytes written versus the drive's rated endurance.

Firmware updates fix real bugs, including ones that cause premature failure, but they also occasionally brick drives. Image the disk first if the data matters, then update.

Step 6: Decide what to do

Endurance numbers sound scarier than they are. Take a 1 TB SATA SSD rated at 600 TBW. Writing a heavy 15 GB every single day comes to about 5.5 TB a year, so the rating would not be reached for over a century. In practice SSDs die from controller faults, firmware bugs, and power loss during writes far more often than from exhausted cells. So do not panic at Percentage Used; panic at movement.

  • Replace now: status Bad or Critical; uncorrectable errors climbing; reallocated or pending sectors increasing between checks; Available Spare below threshold.
  • Back up today, replace soon: status Caution; a stable but non-zero reallocated count; a mechanical drive past 30,000 hours making clicking or clicking-adjacent noises.
  • Monitor: clean counters, healthy status, high hours. Re-check every three months, which is enough to catch a trend without turning it into a hobby.

Whatever the verdict, back up before you act. A failing drive is at its most fragile while you are copying from it, and an image taken now is worth more than a repair attempted later. Our external drive backup walkthrough covers the simple version; if the machine is already unstable, work from a rescue environment instead of booting Windows.

When the check itself misbehaves

  • All zeros, or "Unknown" health. The drive is behind a bridge, RAID controller, or Storage Spaces pool that does not forward SMART. Pull it out of the enclosure or query it from the controller's own utility.
  • CrystalDiskInfo shows nothing for one drive. Run it elevated; standard user rights cannot open the device handle for every controller.
  • Health flips between Good and Caution. Usually a single marginal attribute tripping a threshold. Open the attribute table and see which one — if it is C7, replace the cable and the warning often disappears.
  • The drive disappears entirely. That is no longer a health question. Check cable, port, and power first, then move to the drive-not-detected guide. If it vanishes intermittently under load, stop using it and image it immediately.
  • Blue screens with storage-related stop codes. Correlate the timing with SMART and with the drive's power state; the blue screen guide covers the crash-dump side.

The short version

Check Settings for the headline status, then PowerShell for wear, hours, and uncorrected errors, then CrystalDiskInfo for the attribute table. Age and endurance percentages are context; change is the signal. Any drive reporting uncorrectable errors, pending sectors, or a rising reallocated count has earned a backup and a shopping list. The rest can wait for the next quarterly check — and if you want to keep the whole machine in shape while you are at it, the maintenance utilities on our tools page and the repair series in the blog index cover the rest.