How to reserve free W10 upgrade but keep W7 for many PC's?

So you need to obtain a digital entitlement from Microsoft, that upgrades your Windows 7 license to Windows 10 license. It is bound to the computer hardware even in case you had a retail non-OEM version of Windows 7 purchased. I suppose you do not have any corporate licensing model applied (MPSA, Select...).

See Activation in Windows 10

Digital entitlement is a record stored on Microsft activation server that contains the hardware hash and the edition of Windows. Nothing else enters into it. Neither Microsoft account, nor the original product key.

Digital entitlement is created when you upgrade to Windows 10. It is possible to get it even with a clean install by entering the product key from the original version of Windows (if this has not been used recently). Without installing Windows 10 you can not get it.

But you can back up the current status (backup image), upgrade to Windows 10, and after activation you can roll back (via the backup image, or directly using the rollback button in Windows 10).

(Corrected previously given info:) Information about HDD are stored in Hardware hash, but do have a low priority. The hardware hash is what you get by gatherosstate.exe tool. But when you try to activate using a different and pre-installed HDD, as suggested by @harrymc, you run into a risk, that your hardware hash will be different from what you have registered with Microsoft activation server, and you will not find the digital entitlement during activation and will have to buy the Win10 anyway, so all the efforts will be probably fruitless. Also running the same OS image on various computers is not supported by Microsoft. It forced me few times to phone activation in the past.

So one viable option for you is to upgrade, activate and then immediately roll back. If you are lucky, then no backup images will be necessary. So you can simplify the process you have suggested only by using built-in rollback instead of cloning back the image of the Win 7 disk. Of course the rollback can go wrong sometimes.

There is no special tool that would allow you to query the Microsoft activation server's database for your hardware hash except of the activation process itself.

(source link)