Dear Genetics Savy,
Thank you for using the UCSC Genome Browser, please see this previously answered mailing list question:https://groups.google.com/a/soe.ucsc.edu/d/msg/genome/_6asF5KciPc/UPFDONvZBgAJ
The process for building the knownCanonical table changed between hg19 and hg38, likely explaining the difference you are observing. If you go to the track description page for these two tracks on their respective assemblies you will find these paragraphs:
http://genome.ucsc.edu/cgi-bin/hgTrackUi?db=hg38&g=knownGene
knownCanonical identifies the canonical isoform of each cluster ID or gene using the ENSEMBL gene IDs to define each cluster. The canonical transcript is chosen using the APPRIS principal transcript when available. If no APPRIS tag exists for any transcript associated with the cluster, then a transcript in the BASIC set is chosen. If no BASIC transcript exists, then the longest isoform is used.
http://genome.ucsc.edu/cgi-bin/hgTrackUi?db=hg19&g=knownGene
knownCanonical identifies the canonical isoform of each cluster ID, or gene. Generally, this is the longest isoform.
Besides reviewing track description pages, searching our mailing list archives is one of the best ways to find answers to questions before mailing the list. You will want to note, however, that sometimes this is imperfect as it is possible that very infrequently a process can change, such as how the knownCanonical table is built, so that occasionally an older answer may no longer reflect what is current: https://groups.google.com/a/soe.ucsc.edu/forum/?hl=en&fromgroups#!searchin/genome/knownCanonical%7Csort:date
Thank you again for your inquiry and using the UCSC Genome Browser. If you have any further questions, please reply togen...@soe.ucsc.edu. All messages sent to that address are archived on a publicly-accessible forum. If your question includes sensitive data, you may send it instead to genom...@soe.ucsc.edu.
All the best,
Brian Lee
UCSC Genomics Institute
--