Just so I understand this right: are you saying that if you took a heap and added a clustered index to it with a fill factor of 5%, for arguments sake, the size of the table on disk would grow to 20 times the heap size (plus extra for non-leaf nodes)?
Roughly correct, assuming that the heap had all its pages full. 5% fill factor means leave 95% of the page free space. Pages are 8k in size.
Hence, if we had a table that was a heap and it was 64k in size (8 pages full), then if we were to add a clustered index with a 5% fill factor that means that SQL must put roughly 400 bytes on a page (assuming the rows are all smaller than that), so at 400 bytes per page (5% full), 64 k would take approximately 164 pages.
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability
We walk in the dark places no others will enter
We stand on the bridge and no one may pass