Convert Character Encoding, and Check Encoding for Issues
That won't fix or recognize any malformed data already in the table.

Yes, that is a good technique.  ALTER..CONVERT TO.. does the bulk of the work.  And, since utf8 is a subset of utf8mb4, there should be no differences discovered in step 4.

However, there is still a possibility of step 4 showing something.  This is because the definition of "equal" (hence &lt;&gt;) is different for _general_ci versus _unicode_ci.

For example, in German, ss and ß are unequal in _general_ci (either utf8 or utf8mb4), but equal in virtually all other collations.  If, for example, you currently have a UNIQUE (or PRIMARY KEY) with a value that differs in just ss vs ß, the conversion will have a problem with "duplicate key" error.

Another problematic pair:  ae vs æ

A different issue - not equality, but ordering - Ð &lt; E for _unicode_ci, but not for some other collations.

Meanwhile, as long as you are changing the COLLATION, you may as well go  to the newer Unicode Algorithm in utf8mb4_unicode_520_ci.