I love the automatic company creation in ACT v16, but I discovered that the initial conversion can produce poor results unless you make sure to do one thing: remove special characters from company names.
When you first turn on the "Create Company from Contact" feature in the admin settings, ACT warns you that you are about to create a whole bunch of companies. Presumably, they look for unique occurrences of each company name in your contact records and then begin linking them up. Or, if the company already exists, ACT links them for you.
However, when I did this in my test environment, I found that ACT created many companies that had no linked contacts. My assumption was that some lookup in ACT failed because SQL interpreted the special character as code and not as part of the name of the company. Common examples would be E*Trade and Yahoo!. I replaced any null company values with "Unknown" in case that threw an error, and proceeded to remove all special characters from company names, except periods, commas, hyphens, parentheses and apersands.
Once I did this bit of cleanup and turned on the ACT v16 feature for "Create Company from Contact", it worked perfectly.
If you have this same problem, I recommend you sweep through the company names you use in your contact records.