How can I determine the SATA controller version on Windows?

A program called HWiNFO can display the interfaces of your system's HDDs (hard disk drives) and ODDs (optical disk drives).  You can get it here: http://www.hwinfo.com/download.php

There is even a portable application so you don't have to install it.

Look in the "drives" box to see the matching interface.

Edit, (from different user, Rasmus): This shows the bandwidth for the hard drive/SSD/hybrid disk installed! Not the motherboard itself. You can see the description under this program; "Drives", sub-catagory: "Interface" - "Model". Use a program like SiSoftware Sandra (freeware/trial) or PC Wizard (freeware) to check the actual support of your SATA interface. SATA 600 (MBs) (3/III) or 300 (MBs) (2/II).

If you have a SATA II hard drive installed in your computer, this program (HWiNFO) will show "Interface" --> 3 Gb/s (300 MBs) under the category "Drives", but if you use the program "SiSoftware Sandra", you will see under "Mainboard" that the "Maximum SATA Mode" under "Disk Controller" is "SATA600" or SATA III / 6Gb/s (600MBs). If you use PC Wizard 2014 (example version), you will see that, under "Drives" --> "Number of Disk Controllers", the bandwidth will be "6 Gb/s", but if you click on "Number of Hard Disk", you will see that the "Serial ATA Version" is "2.0 - (SATA-300)" for the hard drive.

enter image description here

This is the situation on my laptop, where I have an old 2.5-inch 320 GB hard drive installed, which has SATA II (3 Gbs/300 MBs); but the software (when you look under the right section) shows that the disk controller for the computer supports SATA III (6 Gbs/600 MBs).


In HWINFO, navigate in the device tree to Bus > PCI Bus #0. Under PCI Bus #0, click on the SATA AHCI Controller device. Details about this device will be displayed in the right pane. Scroll through this pane and you will find a heading "SATA Host Controller" with the Interface Speed Supported as follows:

interface speed supported