UILabel is (notoriously) incompatible with HTML, and doesn’t automatically superscript ™ and ®. So, here’s a method, in Swift 2 (which until only recently didn’t like string lengths very much). Input the base font, the superscripted font (this should be smaller, but doesn’t have to be), and the string in question to get an NSMutableAttributedString object back. To subscript, set the value of kCTSuperscriptAttributeName to -1.