Copy/paste of the answer I provided here: Six janvier, dix mars, etc
There are actually three possible situations, depending mainly on the word following six or dix:
- If the following word starts with a consonant or an aspirated h, then the final consonant shouldn't be pronounced. Examples : Le six mars, le dix mai, pronounced si and di.
- If the following word starts with a vowel or a mute h, then the final consonant is pronounced as a (z). Example : Le six avril pronounced le sizavril.
- In the other cases (mainly when six or dix are alone, or finishing a sentence, but also when they are used as a pronoun), the final consonant is pronounced (s). Example : Il m'en reste dix à faire (diss à faire). Le mot que tu cherches se trouve à la page six. (siss).
Source : https://www.fpjq.org/pdfs/08-05_outils-nombres.pdf (along with my everyday experience of my native language).
To take in consideration : according to the region of France you live in, liaisons and pronunciation of a final letter are subject to change ; in the south, people are more up to pronounce the final x of six & dix as an s, less in the northern half ; there are even some regions (more in the north-eastern country) where the final t in vingt is being pronounced(but not the g), which always surprises me.