HDD Health Monitor
Free HDD S.M.A.R.T. Health Monitor for Windows
» Home » Documentation » Report a Bug » Contact » Donate
E-mail : arisohandriputra@gmail.com

Author: Ari Sohandri Putra · ARImetic Inc.
Sponsor: <https://github.com/sponsors/arisohandriputra/>

Table of Contents
  1. Overview
  2. System Requirements
  3. Getting Started
  4. Main Window
  5. Health & Performance Meters
  6. S.M.A.R.T. Attribute Table
  7. Alerts & Notifications
  8. History Graph
  9. System Tray
  10. Save Screenshot
  11. Hot-Plug (USB Drive Detection)
  12. Supported Drive Types & Controllers
  13. Supported Drive Vendors
  14. S.M.A.R.T. Attribute Reference
  15. Menus & Keyboard Shortcuts
  16. Frequently Asked Questions

1. Overview

HDD Health Monitor is a 100% free and open-source Windows utility that reads raw S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology) data directly from your physical drives and presents it in a clean, easy-to-read interface.

S.M.A.R.T. is a built-in system found in almost every modern hard disk drive (HDD), solid-state drive (SSD), NVMe drive, and many USB-connected drives. It continuously collects dozens of internal measurements - such as read error rates, temperatures, reallocated sectors, and power-on hours - that can indicate whether a drive is healthy or starting to fail.

HDD Health Monitor makes all of this information visible to you at a glance, warns you before problems become data loss, and keeps a historical record so you can track changes over time.

2. System Requirements

Item Requirement
Operating System Windows 11 / 10 / 8.1 / 8 / 7 / Vista
Privileges Administrator (required to read S.M.A.R.T. data from the kernel)
Disk Space Under 2 MB
RAM Minimal - runs comfortably on any modern PC
Dependencies None - single standalone .exe, no installer needed

3. Getting Started

  1. Download HDDHealthmonitor.exe from the official release page.
  2. The program scans all physical drives automatically on startup. No configuration is needed.
  3. If you have more than one drive, click the drive buttons along the top of the window to switch between them.
  4. The S.M.A.R.T. data refreshes every 5 seconds automatically.

The program is a single .exe file - there is no installer, no setup wizard, and nothing is written to your registry during normal use. You can run it directly from any folder, a USB stick, or your Desktop.

4. Main Window

The main window is divided into several areas:

Area What it shows
Drive Selector Buttons (top row) One button per detected physical drive. The button label shows the drive's model name. Click a button to select that drive and view its details. Only one drive is active at a time.
Drive Info Panel Model name, serial number, firmware version, drive type (HDD / SSD / NVMe / USB / M.2 / eMMC), capacity, and temperature in °C.
Health Bar A colored progress bar showing the overall health percentage of the selected drive (0–100%). Green = good, Yellow = caution, Red = bad/failing.
Performance Bar A colored progress bar showing the estimated performance percentage derived from S.M.A.R.T. attributes such as seek error rate and throughput.
S.M.A.R.T. Attribute Table Full list of S.M.A.R.T. attributes reported by the drive. See Section 6 for details.
Status Bar (bottom) For ATA/SATA drives: shows counts of Uncorrectable errors, Reallocated sectors, Pending sectors, and Error log events.
For NVMe drives: shows Available Spare percentage and Percentage Used.
History Graph Button Opens the history graph window for the selected drive. See Section 8.

5. Health & Performance Meters

Health Percentage

The Health % figure gives you a single number (0–100%) that summarizes the condition of your drive. It is calculated from the S.M.A.R.T. attribute values reported by the drive itself:

Health Range Color Meaning
70% > 100% Green Good > drive is healthy
40% > 69% Yellow / Orange Caution > one or more attributes are deteriorating; monitor closely
20% > 39% Red (Warning) Warning > significant issues detected; consider backing up data
0% > 19% Red (Critical) Critical > drive failure imminent; back up immediately

For NVMe drives, health is calculated from the drive's own Health Information Log (Log Page 02h), which includes percentage-used lifetime, available spare, and critical warning flags.

Performance Percentage

The Performance % meter reflects how well the drive is performing relative to its rated capabilities, based on attributes such as seek error rate, throughput performance, and spin-up time. A new drive typically shows close to 100%. Mechanical wear and increasing error rates will lower this figure over time.

6. S.M.A.R.T. Attribute Table

The attribute table lists every S.M.A.R.T. measurement reported by the currently selected drive. Each row contains:

Column What it means
ID The attribute number in hexadecimal (e.g., 05h). This is a standard identifier defined by the ATA specification or the drive manufacturer.
Attribute Name A human-readable name for the attribute (e.g., "Reallocated Sectors Count", "Temperature").
Value The current normalized value (typically 0–253). Higher is generally better for most attributes. When this value reaches or falls below the Threshold, the drive flags a potential failure.
Worst The lowest (worst) normalized value this attribute has ever recorded since the drive was manufactured. Useful for spotting past events even if the drive has since recovered.
Raw The actual count or measurement in native units - for example, the real temperature in °C, the actual number of reallocated sectors, or the total power-on hours. This is often the most useful column for everyday monitoring.
Status OK > attribute is within normal range.
WARNING > attribute is approaching its threshold or shows a non-zero count for a critical measurement.
FAILED > attribute has reached or breached its failure threshold.

Tip: The most important attributes to watch on a traditional HDD are Reallocated Sectors Count (ID 05h), Current Pending Sectors (ID C5h), Uncorrectable Sectors (ID C6h), and Reallocation Event Count (ID C4h). Any non-zero raw value in those four attributes is a warning sign and should not be ignored. For SSDs, also watch Remaining Life Percentage (ID A9h / E7h) and Program Fail Count (ID ABh).

7. Alerts & Notifications

HDD Health Monitor watches your drives in the background and pops up a Windows tray balloon notification the moment a problem is detected. You do not need to keep the window open - as long as the program is running (even minimized to tray), alerts will appear.

The following conditions trigger automatic notifications:

Condition Threshold Severity
Temperature Warning Drive temperature ≥ 55 °C Warning
Temperature Critical Drive temperature ≥ 65 °C Critical - power down or improve airflow immediately
Health Warning Health percentage falls below 40% Warning - back up your data
Health Critical Health percentage falls below 20% Critical - back up immediately
S.M.A.R.T. Predictive Failure Drive reports a SMART failure status via the ATA Return Status command Critical
Reallocated Sectors Detected Raw value of Reallocated Sectors Count (ID 05h) > 0 Warning
Uncorrectable Errors Detected Raw value of Uncorrectable Sectors (ID C6h) > 0 Critical
NVMe Critical Warning Drive sets any critical warning bit in the NVMe Health Log (spare below threshold, temperature exceeded, media errors, etc.) Critical

Each alert is sent only once per session to avoid flooding you with repeated notifications. If the condition clears (e.g., temperature drops back below the warning threshold) and then returns, the alert will fire again.

8. History Graph

The History Graph window lets you see how a drive's health has changed over time. To open it, click the History Graph button in the main window, or go to View → History Graph.

What the history graph shows:

The history data is saved to disk so it persists between sessions - you can close and reopen the program and still see the trend from previous days or weeks.

Tip: Use the history graph to spot gradual deterioration that might not be obvious from a single reading. A slowly rising temperature or a slowly increasing reallocated sector count over weeks is a clear early-warning sign.

9. System Tray

HDD Health Monitor places an icon in the Windows system tray (notification area, bottom-right of the taskbar) for every detected drive. Each tray icon shows the drive's current health percentage as a small colored number:

Icon Color Meaning
Green Health ≥ 70% - drive is healthy
Yellow / Orange Health 40%–69% - caution
Red Health < 40% - warning or critical
Blue Health data not yet available (drive still being scanned)

Right-clicking a tray icon shows a small menu with two options:

When you click the window's close button (×), the program minimizes to tray rather than quitting, so monitoring and alerts continue running in the background. To exit fully, use File → Exit or right-click the tray icon and choose Exit.

10. Save Screenshot

You can save a PNG image of the main window at any time. This is useful for sharing your drive's S.M.A.R.T. data with a technician or posting it in a support forum.

To save a screenshot:

11. Hot-Plug (USB Drive Detection)

HDD Health Monitor is hot-plug aware. When you connect a USB drive while the program is running, it automatically detects the new drive and adds it to the drive selector within about 1–2 seconds. No restart is required.

Similarly, when you safely remove or unplug a USB drive, the program removes its button and tray icon automatically.

Note: Whether S.M.A.R.T. data is available for a USB drive depends on the USB bridge chip inside the drive enclosure. See Section 12 for supported USB bridge chips.

12. Supported Drive Types & Controllers

HDD Health Monitor supports the following drive types and uses the appropriate low-level communication method for each:

Drive / Interface Type Access Method Notes
ATA / SATA HDD & SSD ATA Pass-Through Direct (IOCTL_ATA_PASS_THROUGH_DIRECT), with fallback to Legacy SMART IOCTL Full S.M.A.R.T. support including attribute table, error log, and self-test log
M.2 SATA SSD Same as SATA above Identified separately as M.2 SATA type
NVMe SSD (internal PCIe / M.2) Windows Storage Query Property (IOCTL_STORAGE_QUERY_PROPERTY), reading NVMe Health Information Log (Log Page 02h) Shows NVMe-specific attributes: Available Spare, Percentage Used, Power-On Hours, Power Cycles, Unsafe Shutdowns, Media & Data Integrity Errors, and temperature sensors
USB Drives — Standard SAT SCSI-ATA Translation (SAT) via IOCTL_SCSI_PASS_THROUGH_DIRECT using ATA PASS-THROUGH (A1h / 85h commands) Works with most modern USB enclosures that implement SAT properly
USB - JMicron Bridge JMicron vendor-specific protocol Supports JMicron chips: 152D:0578, 152D:0565, and related models
USB - ASMedia Bridge ASMedia vendor-specific protocol Supports ASMedia chips (174C:xxxx series)
USB - Realtek Bridge Realtek vendor-specific protocol Supports Realtek bridge chips (0BDA:xxxx series)
USB - Cypress / I-O Data Bridge Cypress vendor-specific protocol Supports Cypress (04B4:6830) and I-O Data bridge chips
USB - Prolific Bridge Prolific vendor-specific protocol Supports Prolific chips (067B:2773 and related)
USB - Sunplus Bridge Sunplus vendor-specific protocol Supports Sunplus chips (04FC:0C25 and related)
USB - Logitec Bridge Logitec vendor-specific protocol Supports Logitec USB-SATA bridge chips
USB NVMe - JMicron NVMe Bridge JMicron NVMe-over-USB vendor protocol Supports JMicron NVMe bridges: 152D:0583, 152D:0586, and related
USB NVMe - ASMedia NVMe Bridge ASMedia NVMe-over-USB vendor protocol Supports ASMedia NVMe bridge 174C:2362 and related
USB NVMe - Realtek NVMe Bridge Realtek NVMe-over-USB vendor protocol Supports Realtek NVMe bridge 0BDA:9210 and related
USB NVMe - VLI Bridge VLI VL716/VL717 NVMe vendor protocol Supports VLI chips 2109:0900 and related
USB NVMe - FMA Bridge FMA NL6221 NVMe vendor protocol Supports FMA bridge 0BDA:9220 and related
USB - ASMedia ASM1352R RAID ASMedia ASM1352R dual-drive RAID bridge protocol Supports ASMedia ASM1352R (174C:1352)
SCSI SCSI Log Sense (page 0x2F / 0x0D) Reads temperature and limited health data from SCSI/SAS drives

Note: If your USB drive enclosure uses a bridge chip not listed above, the program will still attempt a generic SAT connection. If that fails, the S.M.A.R.T. data will not be available but the drive will still appear in the drive list with its model and capacity.

13. Supported Drive Vendors

HDD Health Monitor recognizes drives from the following manufacturers and applies any vendor-specific S.M.A.R.T. attribute mappings automatically:

Brand Notes
SamsungHDD & SSD; vendor-specific SSD attributes supported
Western Digital (WDC)HDD & SSD; helium drive attributes supported
SeagateHDD & SSD; vendor-specific attribute mappings
ToshibaHDD & SSD
Hitachi / HGSTHDD
IntelSSD; End-to-End Error Detection attribute supported
Micron / CrucialSSD; Uncorrectable Error Count attribute supported
KingstonSSD; Erase Fail Count attribute supported
SanDiskSSD
SK HynixSSD; SATA PHY Error Count attribute supported
Kioxia (Toshiba Memory)SSD & NVMe
ADATASSD; Average Erase Count attribute supported
PNYSSD
CorsairSSD
LexarSSD & Flash
Silicon PowerSSD
Team GroupSSD
GoodRAMSSD
PlextorSSD
OCZSSD
Other / UnknownStandard ATA S.M.A.R.T. attributes used

14. S.M.A.R.T. Attribute Reference

The table below lists all S.M.A.R.T. attributes that HDD Health Monitor can display, their IDs, and what they mean in plain language. Not every drive reports every attribute - you will only see the ones your particular drive supports.

Criticality key:
● Critical > A non-zero raw value or a failed threshold is a serious warning sign. Back up your data immediately.
● Advisory > Worth watching; deterioration here may indicate developing problems.
○ Informational > Normal operational counters; not directly linked to failure prediction.

Standard ATA S.M.A.R.T. Attributes

ID Name Criticality What it means
01hRaw Read Error RateAdvisory Rate of hardware read errors. Some manufacturers (e.g., Seagate) start this at a high raw value - check the normalized value against the threshold rather than the raw number.
02hThroughput PerformanceInformational Overall throughput efficiency of the drive.
03hSpin-Up TimeInformational Time (in milliseconds) for the drive platters to reach operating speed on startup. Increasing values can indicate a weakening spindle motor.
04hStart/Stop CountInformational Total number of spindle start/stop cycles since manufacture.
05hReallocated Sectors Count Critical Number of bad sectors that have been found and remapped to spare areas. Any non-zero value is a red flag. A rising count means the drive surface is deteriorating.
07hSeek Error RateAdvisory Rate of positioning errors when the read/write head moves to a new location. High rates can indicate mechanical wear or head alignment problems.
08hSeek Time PerformanceInformational Average efficiency of seek operations.
09hPower-On HoursInformational Total number of hours the drive has been powered on since manufacture. Useful for estimating age and remaining lifespan.
0AhSpin Retry CountCritical Number of times the drive had to retry spinning up. Any retries indicate mechanical problems with the spindle motor.
0BhCalibration Retry CountInformational Number of times the drive had to recalibrate its heads.
0ChPower Cycle CountInformational Total number of times the drive has been powered on and off.
16hCurrent Helium LevelAdvisory For helium-filled drives (e.g., some WDC/HGST models). Indicates remaining helium pressure. A drop may indicate a seal leak.
1AhRemaining Rated LifeAdvisory Estimated percentage of rated life remaining (primarily on enterprise SSDs).
0DhSoft Read Error RateAdvisory Rate of errors that were corrected by the drive's ECC engine without needing a reallocation.
BEhAirflow TemperatureInformational Air temperature measured inside the drive casing.
BFhG-Sense Error RateInformational Errors caused by shock or vibration. Relevant for laptop drives.
C0hPower-Off Retract CountInformational Number of times the heads were retracted due to sudden power loss.
C1hLoad/Unload Cycle CountInformational Total number of times the heads have been loaded and unloaded from the parking ramp (common on laptop drives with Automatic Acoustic Management).
C2hTemperatureInformational Current drive temperature in °C. Displayed prominently in the drive info panel.
C3hHardware ECC RecoveredInformational Number of errors corrected by hardware Error Correction Code. A count here does not necessarily mean the drive is failing - all drives do some ECC correction.
C4hReallocation Event Count Critical Total number of reallocation attempts (successful or not). A non-zero value confirms bad sectors have occurred on this drive.
C5hCurrent Pending Sectors Critical Sectors that the drive suspects are unstable and has flagged for reallocation on the next write. Any non-zero value is urgent. These may cause read errors right now.
C6hUncorrectable Sectors Critical Sectors that could not be read or written even after multiple retries and ECC correction. Any non-zero value means permanent data loss has occurred in those locations.
C7hUltraDMA CRC Error CountAdvisory Errors in data transfer between the drive and the host controller via the SATA/ATA cable. Non-zero values often indicate a faulty cable or connector rather than a failing drive - try replacing the data cable first.
C8hWrite Error Rate Critical Rate of errors during write operations.
BChCommand TimeoutAdvisory Number of commands that timed out during operation.
BDhHigh Fly WritesInformational Number of write operations performed when the read/write head was flying too high above the platter (detected by an internal sensor).
BBhUncorrectable ECC Error Critical ECC errors that could not be corrected. Indicates serious media problems.
B8hEnd-to-End Error Critical Errors detected when data was compared between the drive's internal buffer and the storage media. Indicates a data integrity problem.
B7hSATA Downshift Error CountAdvisory Number of times the SATA link speed was downgraded due to communication errors. May indicate cable or controller issues.
EFhSATA PHY Error CountAdvisory Physical layer errors on the SATA interface.
F1hTotal LBAs WrittenInformational Total amount of data written to the drive over its lifetime (in logical block addresses). On SSDs this is important for estimating remaining write endurance.
F2hTotal LBAs ReadInformational Total amount of data read from the drive over its lifetime.

SSD-Specific Attributes

ID Name Criticality What it means
A9h / E7hRemaining Life Percentage / SSD Life LeftAdvisory Estimated percentage of the SSD's write endurance remaining. When this reaches 0%, the SSD has exhausted its rated P/E cycle budget - it may still function, but is no longer guaranteed by the manufacturer.
ABhProgram Fail Count Critical Number of flash programming (write) failures. Any non-zero value indicates failing NAND flash cells.
AChErase Fail Count Critical Number of flash erase failures. Non-zero values indicate damaged NAND cells.
ADhWear Leveling CountInformational Number of times the SSD's wear leveling algorithm has cycled through the NAND blocks. Higher values mean the drive has been used more heavily.
AEhUnexpected Power LossInformational Number of times the SSD experienced a sudden power cut while write operations were in progress.
AFhPower Loss Protection Fail Critical The SSD's capacitor-based power-loss protection circuit failed to complete a save during a power outage.
A0hUnsafe Shutdown CountInformational Number of times the SSD was powered off without a clean shutdown sequence.
E9hNAND Writes (GB) / Media WearoutInformational Total gigabytes written to the NAND flash, or a media wearout indicator (vendor-specific interpretation).
EAhAverage Erase Count / Total WritesInformational Average number of erase cycles across all NAND blocks, or total host writes (vendor-specific).
FChNewly Added Bad Flash Block Critical Number of NAND flash blocks that have been marked bad during operation (in addition to factory-bad blocks).

NVMe Health Log Attributes

For NVMe drives, the following values from the NVMe Health Information Log (Log Page 02h) are displayed:

Field ID What it means
Available Spare03hPercentage of spare NVMe blocks remaining (starts at 100%).
Available Spare Threshold04hThe minimum spare percentage set by the manufacturer. A critical warning fires when Available Spare falls below this.
Percentage Used05hDrive manufacturer's estimate of the percentage of rated life used (0–255%). Values over 100% mean the drive has exceeded its rated endurance.
Power On Hours09hTotal hours the NVMe drive has been powered on.
Power Cycles0ChTotal number of power cycles.
Unsafe Shutdowns10hNumber of unclean power-off events.
Media and Data Integrity Errors11h Critical - count of unrecovered data integrity errors. Any non-zero value is serious.

15. Menus & Keyboard Shortcuts

Menu Item Shortcut Action
File Save Screenshot Ctrl+S Save a PNG image of the main window to your Documents\HDDH_Screenshots\ folder

16. Frequently Asked Questions

Q: The attribute table shows "Run as Administrator and click Refresh". What do I do?
A: Close the program, then right-click HDDHealthmonitor.exe and choose Run as administrator. S.M.A.R.T. data requires administrator-level access to the Windows kernel driver.

Q: My USB drive shows up but the S.M.A.R.T. table is empty or shows no data.
A: The USB bridge chip inside your enclosure may not support S.M.A.R.T. pass-through, or it may use a protocol not yet supported. The drive will still appear in the list with its model name and capacity, but health data will not be available. Try a different enclosure if you need S.M.A.R.T. readings from that drive.

Q: I see a non-zero Reallocated Sectors count. Should I be worried?
A: Yes. Even a single reallocated sector means the drive has found a bad spot on the disk and moved data away from it. A small count (1–5) on an older drive may be stable for a long time, but any non-zero value is a signal to back up your data now and replace the drive when convenient. A rising count is urgent - replace the drive immediately.

Q: The health percentage suddenly dropped. Is the drive about to fail?
A: A sudden drop usually means a new S.M.A.R.T. attribute has crossed its threshold or a critical raw value (like pending sectors) has appeared. Check the attribute table for any rows showing WARNING or FAILED status. Back up your data as a precaution and monitor the drive closely over the next few days.

Q: My NVMe drive's "Percentage Used" shows 0%. Is it new?
A: Not necessarily - it means less than 1% of the rated write endurance has been consumed. NVMe drives with heavy workloads will show increasing values over months or years. The drive is perfectly fine until this number approaches 100%.

Q: The temperature alert fired but my room is cool. Is something wrong?
A: The alert threshold is 55 °C (warning) and 65 °C (critical). HDDs and SSDs run hotter than room temperature, especially under load or in enclosed cases with poor airflow. Check that your PC case fans are working and that the drive has adequate clearance. Sustained temperatures above 55 °C will shorten the drive's lifespan.

Q: How do I stop the program from running in the background?
A: Right-click the tray icon and choose Exit, or go to File → Exit. Simply closing the main window only minimizes the program to the tray; it keeps running until you explicitly exit.

Q: Can I run this on more than one drive at the same time?
A: Yes. HDD Health Monitor scans and monitors all physical drives simultaneously. Each drive gets its own tray icon, and alerts are generated independently for each. Use the drive selector buttons at the top of the window to switch the detail view between drives.

Q: Where are the history files stored?
A: History data is saved alongside the executable in the same folder where HDDHealthmonitor.exe is located, so keep the program in a folder where you have write permission (not in C:\Program Files\ unless you run as Administrator).

Q: Is this program free? Does it expire?
A: Yes, HDD Health Monitor is 100% free and open-source software (MIT License). It does not expire, does not nag, and does not require registration. If you find it useful, consider supporting the author via GitHub Sponsors.


Copyright © 2026 ARImetic Inc. All Rights Reserved