Can I clone an HDD to an SSD that's smaller?

I want to replace the hard disk on my Windows 10 machine (it’s an old-school tower desktop, not a laptop) with an SSD to cut down on booting times. The way I understand the process is that I connect the new drive to the computer via a USB adapter, clone the existing drive onto the new one with a dedicated software for that, shut down and unplug the computer, open the casing and put the new drive into the slot of the old drive. Then attach the cables, and presto.

Doesn’t sound too hard, but one question remains: The new SSD that I got is significantly smaller than the old HDD - 480 GB versus 1 TB. Most of the data on the old drive is not system files but just personal data, backups, photos etc that I need only every now and then, so I can just as well store them externally. So I don’t mind removing that from the HDD to bring the total usage of that drive down to below 480 GB. Would that be enough to do the job, or would there be a problem in the cloning process if the new drive has less nominal capacity than the old one that’s being copied, irrespective of how much of it is used?

I never had a problem ntfsresizeing a filesystem to fit a smaller space, assuming of course that you have less than 480 GB stored so that it can squeeze it in.

Yes, what you describe is possible, and fairly easy assuming you never changed your partitions on your hard drive. I’ve done it before.

Once you’ve copied over and removed all the files you don’t intend to copy, and the resulting “used space” is decently smaller than the capacity of your SSD, you can just use Macrium Reflect (free version) to do the job. Just follow the guide here:

https://knowledgebase.macrium.com/display/KNOW/Cloning+a+disk

The default settings will likely be fine, so you won’t need to drag anything. It will even automatically resize the copied partition, so you don’t even need to use ntfsresize or Windows Disk Management.

I will also point out there’s no reason to be worried about messing up. If, somehow, you do mess up, you still have your old hard drive, and it’s still entirely unchanged.

Do not forget that the OS tends to grow over time, both from patch files being stored and just from growth of the live files. As such you’ll want what goes onto the SSD to be a bunch less than its 480 capacity.

As an unrelated thought …
You talk about putting your bulk of files on an external drive. Given you’ve got a tower, there’s no reason the SSD has to be instead of rather than in addition to the existing drive.

So perhaps what you really need to do is install the SSD physically then install (or transfer) the OS to that SSD then re-designate the SSD as the boot drive and as “C:”.

I’m not current enough on the relevant tools to advise how specifically to do that, but that approach or a close cousin of it may be a lot easier or quicker than exporting a couple/few hundred GB to a third disk or cloud.

I have read that you want the drive on which your OS resides, and any SSD in general, to be less than 75-80 percent filled. I have no idea if this is so, or not—and was hoping one of you could say definitively one way or the other—but if it is true, keep that in mind.

I do know from personal experience that updating Windows 10, and definitely upgrading from 7 to 10, can require significant space on your OS drive. The upgrade was in “windows.old” and removing it (once I was absolutely sure I didn’t need anything in that folder anymore), yielded about 20 GB or so of room.

As far as migrating the OS from larger HDD to smaller SSD, I had to have done that in the past, but I can’t remember whether I migrated the OS, or whether I backed up the data to an external drive, nuked everything on the old HDD, and reinstalled Win 7 on the new, smaller SSD, then moved my data to the HDD. It’s been awhile.

I’ve done exactly that, using Macrium Reflect, specifically to move the OS to an SSD that was smaller than the original drive. Actually instead of cloning I think I created a full-disk backup image and “restored” from that, but it amounts to the same thing. To increase the available space on the SSD, I also removed the Dell recovery partition, which is pretty useless when you have full backups. It still exists on the original HDD anyway.

Based on the images in that guide, it appears that those partitions are actually not included by default when you choose “clone disk.”

I’d argue that, not only does backing up regularly remove the need for those partitions, but Windows 10 itself has gone a long way to make it where you don’t need to use any proprietary recovery partitions, and can just use the recovery option built into Windows. It will get everything working, even if you’d prefer to then go and download the newer drivers from the manufacturer’s website.

The main benefit of a backup of your OS partition is that it will have everything already set up–even your programs. That makes it better than any recovery mode for most cases.

Re: the concerns of @LSLGuy and @Gray_Ghost

In my experience, 480 MB is well enough for a Windows 10 partition with quite a few programs installed, with quite a lot of room left over. I actually have a second older PC with a 128 GB drive, and it isn’t full. The exception would be if you install a bunch of AAA games and such on that SSD, but I never do. Only a very few care about the speed of yoru drive for anything other than just loading.

That said, if you do have a lot of AAA games, you might want to look into an alternative to installing Windows on the SSD–use SSD caching instead. Caching your HD onto your SSD can give you nearly SSD speeds after you run your programs a few times.

If your processor and motherboard support it, you can look for the SSD caching solution from either Intel or AMD. (Those will be free.) If not, then there’s a proprietary program called PrimoCache which has a 30-day free trial, and is only $30 for a single PC after that.

Honestly, if I didn’t already have the OS on my SSD, I probably would have just used SSD caching, based on the results I’ve seen.

Maybe, but FTR, the way I did it, the entire disk contents including the Dell recovery partition were all copied over to the SSD. IIRC, I had to manually delete it, and then I couldn’t use Disk Management to extend the main partition because Windows 7 isn’t smart enough to know how to extend the lower bound of a partition, only the upper bound. So I got the free version of MiniTool Partition Wizard to do that.

I’m always nervous using these third-party utilities to do really fundamental stuff like partition resizing, but it worked and the system has been running fine for well over a year now. In fact this “new” refurbished Dell Optiplex with the SSD I added along with more memory and the quad i7 processor is the best computer I’ve ever had, absolutely rock-solid reliable and really fast. Also, so quiet you can barely tell it’s on.

I envy you. My ancient case is poor at airflow management, despite my best attempts at tying cables out of the airflow, and adding a few supplemental fans. I don’t do much to tax my graphics card yet, but I anticipate much whining from its fans when it gets up and going.

BigT, I know it’ll work on a 240 GB drive, because it’s what I have. Did get crowded though with a bunch of extra stuff before I picked up a 1 TB SSD to move a bunch of games to. And I’ll sometimes go, yeah, yeah, yeah, when installing stuff, not paying attention to it trying to install on the default 240 GB drive. Oops.

Never tried the caching thing. I’ll take a look at it if I need to. Sounds interesting.

Thanks everyone guys. I did it last night as discussed, and of course it doesn’t work; when I try to boot (with the new SSD in lieu of, not in addition to, the old HDD), I get an “Error 1962 - No operating system found”. I was looking around in the BIOS a bit but couldn’t find an option to select the new drive to boot from. I suppose that somehow the cloned copy of the old disk isn’t bootable.

Maybe it has something to do with the fact that I did not copy all partitions in the cloning process; I found that the old hard disk had, in addition to the C partition that Windows was on, several other recovery partitions on it. When I tried to clone the disk, Macrium gave me an “insufficient storage space” error message - even though the combined usage of all partitions was only around 205 GB, i.e. well less than 50 % of the capacity of my new SSD. I suspected that the reason was that one of these partititons was completely using up tha capacity assigned to it, so I figured that I wouldn’t need the recovery partitions anyway and cloned only the C one. That solved the “insufficient storage space” error and let me do the cloning, but now I have this error 1962. Could it be that the Windows clone is incomplete and not functioning without the recovery partitions?

I don’t think Windows needs any weird extra partitions to boot. But if it is not getting into Windows at all, did you try fixing the boot code from Macrium Reflect or Windows Startup Repair?

Were you originally using MBR boot or GPT or…?

Win10 requires those partitions, and they aren’t recovery partitions. It’s just the way Win10 organizes a disk now: clearly they decided that with Terabyte disks, you didn’t need to save individual sectors, so instead of having things like a “Master Boot Record”, Win 10 effectively has things like a “Master Boot Partition”.

If the partition you want to shrink is in the middle of the disk, with another partiton after it, it’s going to make it more difficult for the cloning software to shrink your disk, but it’s still possible. Just clone the partitions one at a time, shrinking the big partiton enough to leave room for the small partitions.

Well, that sucks. I had hoped that, based on the instructions, it would automatically not include the recovery partitions, while leaving the necessary partitions which are needed to boot.

Because, yes, you are correct. You need more than just the Windows partition. Modern Windows has both at boot partition and a Windows partition. These are two separate partitions. This is why the example images show two partitions on the destination drive.

You will also need to copy over the boot partition. Unfortunately, I’m not sure how easy it would be to see which one is the boot partition in Macrium Reflect. (I don’t currently have access to a Windows system to check.) I suggest opening up Disk Management (type that into the taskbar search or start menu), and seeing which partition has the BOOT flag set. It will be mentioned in the status column for that partition.

Go back into Macrium Reflect and then make sure you clone both that partition AND the Windows partition. Put the boot partition first on the SSD. If you need to, delete all paritions on the SSD beforehand.

And, before you reboot, make sure that the boot flag is set on the new boot partition on the SSD.

BTW, it’s possible that, if you drag over the partitions individually, you’ll find that Macrium will let you clone all of them onto the SSD. It may just not be able to automatically resize them. Also, I note that a boot parition is quite small, so any partition that takes up gigabytes is NOT the boot partition.

Let’s say more precisely, you definitely need the EFI system partition, if any, and the boot stuff if that is on a separate partition (so don’t remove a “Windows System Partition”), but not the recovery partition:
Standard partition layouts
How to remove a recovery partition
How to get rid of the System Reserved partition on a MBR formatted drive

Thanks again everybody! It worked out after I did a second clone, this time including all partitions on the old HDD (not just the C one with the operating system on it). So apparently the other partitions were necessary after all.

Oh, and I can confirm that the machine is faster now. But more striking is the difference in noise; it’s completely silent now, which I’m not used to after years of constant clacking sounds from the hard disk.