What determines whether a drive can be converted to APFS?
There's an important distinction that needs to be made that's key to understanding the &quot;rules.&quot;  There's:

Supporting APFS
Converting to APFS

Any drive, spinning (HDD) or solid state (SSD) will support APFS. You can wipe it clean and do a new partition with an APFS volume.
Apple File System Guide FAQ:

Can I use Apple File System with my existing hard disk drive?
Yes. Apple File System is optimized for Flash/SSD storage, but can also be used with traditional hard disk drives (HDD) and external, direct-attached storage.

Paraphrased from the FAQ:

Apple File System is a new, modern file system for...macOS....It is
optimized for Flash/SSD storage...
APFS replaces HFS+ as the default file system for...macOS High Sierra and later.

Converting (during install or otherwise) is another story.

Installs/Upgrades with an SSD will convert automatically.
Installs/Upgrades with an HDD will not.
You cannot convert non-Mac volumes at all. Though you can erase the drive and do a fresh install with APFS.

So as a use case, you install macOS High Sierra on a iMac with a single HDD. It will not convert, and it won't give you the option because you cannot convert a boot volume. You can't even erase a boot volume for that matter. However, if you boot into macOS Recovery, you will have the ability to convert your drive.
If you have a USB external formatted as HFS+, it will convert.  If it's formatted FAT32 (for example), it won't; you can, however  wipe it and format it with APFS.