It can take a while.
It depends on a few things, but yes, CHKDSK can take a really long time.
Become a Patron of Ask Leo! and go ad-free!
CHKDSK takes forever
The amount of time CHKDSK needs depends on the speed of the disk it’s scanning, the speed of the disk interface, the amount of data on the disk, and, if you’ve asked for a surface scan, the capacity of the disk. Normal times range from minutes to hours, but physical errors on the disk can slow progress significantly. As long as you’re backed up, though, you have options.
What is CHKDSK?
CHKDSK is the command line utility in Windows that, as its name implies, checks disks.
It generally performs two types of checks:
- It ensures that the filesystem data is correct. This is the data that allows Windows to locate your files and keep them organized.
- It can also perform a surface scan of the drive, identifying and possibly repairing physical errors.
You can read more about CHKDSK and the two types of scans here: What’s the Difference Between CHKDSK /F and CHKDSK /R?
Disk & data size
Probably the biggest factor in determining how long CHKDSK will take is the amount of data stored on the disk. When checking the filesystem using the command /F, CHKDSK checks it all, and the more there is to check, the longer it takes. An empty disk can take a few seconds, whereas a disk containing a few terabytes of data could take hours.
The capacity of the disk also comes into play if you’ve instructed CHKDSK to perform a surface scan (/R). For this operation, it doesn’t matter how much data is on the disk; the entire surface of the physical disk is scanned. Naturally, large disks take longer than small ones. On top of that, if you do a surface scan, a file system scan (/F) also happens, adding however long that takes.
CHKDSK accesses the disk heavily,1 so the speed of the disk itself, as well as the speed of the interface to the disk, impacts the time it takes to do the job.
- Internal drives are faster than external drives.
- External drives on USB-C and USB-3 connections are faster than those on older USB-2 connections.
So, when everything is working properly, CHKDSK’s speed is a function of the disk speed, the disk interface speed, the amount of data on the disk, and, if you’ve asked for a surface scan, the capacity of the disk.
When things aren’t working, life gets interesting.
By far the #1 reason a CHKDSK can take seemingly forever is that there’s a surface error on the disk media, and it’s trying very hard to recover the data and repair or remove the problematic sector.
This can take hours.
This can take days.
As always, it depends on the severity of the problem. Often, you won’t notice — until you do because there’s a problem on your hard disk that CHKDSK just has to work hard to attempt to recover.
And, on top of that, recovery is not guaranteed. CHKDSK will give up after some period of time.
Should you let it run?
I can’t really answer that. It depends on a few factors:
- How much time you have
- The importance of the information on the drive
- Whether that data has been backed up
If the data is very important and not backed up, I’d let CHKDSK run for days, if necessary, to maximize the chances that the data might be recoverable. (If not, then you’re looking at either an expensive data recovery service, data loss, or both.)
If you have backups, of course, then this is moot. Type CTRL+C to abort CHKDSK, and then decide what to do next.
Should you replace the drive?
I can’t answer this one, either. Some errors are fixable, and some are not.
Assuming the data is backed up and there would be no (or minimal) data loss, here’s what I would do.
- Stop CHKDSK with a CTRL+C.
- Perform a full (not-quick) format of the drive. This will attempt to write to the entire disk. If it stalls or fails to complete, then I’d replace the drive.
- If it succeeds, I’d run CHKDSK /R again. While this might be redundant, it’s another level of safety check to ensure the drive is OK. If it stalls or fails to complete, I’d replace the drive.
If all that worked OK, I’d restore the disk from backup and move on.
Oh, and keep backing up.
If this hasn’t convinced you to start backing up, start backing up. You’ll notice the phrase “data loss” a couple of times above, and that’s almost always a result of not having proper backups. Disks can fail at any time and for a wide variety of reasons. CHKDSK can recover from some, but certainly not all.
Your only true protection is a backup.
Once you have backups in place, if CHKDSK starts taking a long time, what you choose to do depends more on your patience than anything else.
Subscribe to Confident Computing! Less frustration and more confidence, solutions, answers, and tips in your inbox every week.
Footnotes & References
1: Mostly read operations, so CHKDSK /F is perfectly fine. CHKDSK /R is somewhat pointless (and may be declined by the operating system) on SSDs, since there is no surface to scan.