>>55108236competitively?
Usually a defensive type. If your pokemon is weak 4x weak to earthquake, you tera grass or flying to eat it so your pokemon lives longer. If it's weak to fighting, you tera ghost so they miss.
Sometimes you want them to hit their stab extra hard. Like feraligatr will take water tera so his liquidation hits extra hard in rain.
Sometimes you need strength and defense. Serperior will take fire tera and take terablast. If it sees an ice type it switches to fire and hits them with a super effective fire type move boosted by stab.
immersion wise?
whatever u think is cool. i like tera fairy for my shiny tsareena cuz it's pink