Introduced in the middle of February 2020, Pokémon HOME allows for importing from Bank and Let's Go Pikachu / Eevee, and bi-directional connectivity to Sword & Shield & future titles.
When a Pokémon is transferred from Bank or Let's Go Pikachu / Eevee or their games of origin into HOME, it is assigned a unique 64 bit number to differentiate it from other uploads stored on the cloud server.
Pokémon that have not yet visited HOME do not yet have a HOME tracker.
Pokémon that are traded in-game (online/local trades) do not get assigned a tracker.
Pokémon that must travel thru HOME to reach the game it resides on must have a HOME tracker (origin->current).
Pokémon that are uploaded in the same batch are not guaranteed to have a similar tracker (sometimes incremental).
Pokémon that are missing a HOME tracker that should have one, or have a fake one, are rejected for upload (error 10015).
Trackers are only a concern in PK8+ formats. Pokémon that aren't yet in the PK8+ (2019) do not have a field for this data.
What exactly is this value be used for?
Storing data for each game visited outside of HOME (ex. SW/SH, PLA, BD/SP, S/V...)
Tracking how Pokémon are traded between users.
Detecting if a Pokémon has been modified/cloned from the original upload.
Detecting if a Pokémon is newly entered into the HOME system (having a value of zero).
HOME trackers will be changed each upload, so a tracker value is not a permanent value.
Only HOME can determine if a tracker value is valid.
Best practice is to let the server assign you a tracker, rather than assigning a blatantly wrong tracker. For local/online gameplay, GameFreak does not check this metadata, so having arbitrary/lacking tracker values does not matter. Validating a HOME tracker requires API access to HOME, and is not something the hacking community will ever have access to. GameFreak does not validate HOME trackers for online play, but for officially sanctioned VGC events, they do -- you shouldn't be using hacked Pokémon in tournaments anyway (against our rules).
Due to the described behavior, here are our recommendations:
When creating new Pokémon that are from generations prior to Sword & Shield, transfer into HOME via Bank first.
When creating new Pokémon that reside in their game of origin, leave the tracker blank.
When creating new Pokémon that reside in a game different from their origin set, generate them in their game of origin then transfer.
When modifying any (that have already visited HOME) immutable values (PID, IVs, etc), zero out the tracker then transfer starting from their origin games.
Why not create a random tracker value?
Again, only HOME can determine if a tracker value is valid.
HOME will check tracker values to see if the details match the original upload (modified data).
HOME will check tracker values to see if the details are on another user's account (cloned data).
HOME will disallow uploads if the tracker doesn't match the data on their server (error code 10015).
Uploading to HOME without a tracker value will automatically assign a new one (note: only when entering from their native games).
You can receive Pokémon that lack a tracker value from other players via trade (in addition to a game's natives).
Using an invalid tracker may fool checking tools (like PKHeX) that do not have access to HOME's API, but can still be checked by trying to upload to HOME manually. Do not be deceitful.
PKHeX's default settings are to require tracker values (should be on every non-Gen8 origin Pokémon that is residing in Gen8+, etc), but has a toggle setting to opt-out of strict checking. This is to allow users to create the most-legal data without forging an INVALID tracker value, for in-game play.