TikTok renders avatars small throughout the interface and, unlike most social platforms, gives you no way to tap through to a larger view. There is no expand gesture and no save option. The image you see on a profile is roughly a hundred pixels square, which is fine at the size it is displayed and useless for anything else.
Behind that, TikTok stores several renditions of every uploaded avatar, with the largest typically around 1080 pixels square. These sit at ordinary public addresses on the same content delivery network that serves everything else, requiring no authentication. Retrieving the larger one is simply a matter of asking for the right rendition instead of the one the interface happened to load.
A point worth stating plainly, because people ask: using this tool sends no signal to TikTok. There is no profile-view notification, nothing appears in anyone's analytics, and the account holder has no way to know. That is not a feature we built — TikTok has never had view notifications for profiles, and nothing about fetching a public image creates one.
The main thing that catches people out is default avatars. Accounts that never uploaded a picture use TikTok's standard placeholder graphic, and fetching that returns a generic grey image rather than an error. When we detect the placeholder we say so, because otherwise a successful download of a useless image looks like a bug in the tool.