Chamoson () est une commune suisse du canton du Valais, située dans le district de Conthey, entre les villes de Martigny (17 km) et de Sion (12 km).
Le territoire de Chamoson s'étend sur . Lors du relevé de , les surfaces d'habitations et d'infrastructures représentaient de sa superficie, les surfaces agricoles , les surfaces boisées et les surfaces improductives .
Au nord, le Grand Muveran fait office de frontière avec la commune de Bex dans le canton de Vaud. Le massif du Haut de Cry fait office de frontière avec la commune de Conthey. À l'est, le rocher du Cy de Grü et le pied du coteau font office de frontière avec la commune d'Ardon. Au sud, le Rhône crée la frontière avec les communes de Nendaz et de Riddes. Enfin, à l'ouest, la rivière Losentse fait office de frontière avec la commune de Leytron.
La commune comporte plusieurs localités, la principale étant bien-entendu Chamoson, au sommet du cône d'alluvions de la Losentse, avec recensés.
Juste au-dessus de ce village, se situe le hameau du Grugnay avec 203 habitants recensés. Au pied du coteau s'étend Saint-Pierre-de-Clages (604 habitants), célèbre pour son église romane. Sur le flanc du Haut de Cry, les deux hameaux d’Azerin et de Némiaz totalisent 117 habitants. Entre la Losentse et son affluent, le torrent de Cry, le hameau Les Vérines abrite 236 personnes. Enfin, le hameau de Châtelard se situe à l'Ardève, tandis que sur les hauteurs, proche de la limite communale avec Leytron, on trouve les Mayens de Chamoson, avec 302 habitants.
Les indications de population datent du recensement 2016.
Comme pour la majorité des communes du Valais, le territoire de Chamoson se trouve entièrement sur le bassin versant du Rhône.
Le cours d'eau principal, la Losentse, prend sa source à l'étang de la Forcla situé au pied du Pacheu. Elle compte trois affluents : le Grand Tsené, s'écoulant depuis la Pointe de Chemo, le torrent de Cry et le Tsené (anciennement torrent de Saint-André ou Merdesson) en provenance du Haut de Cry.