Commune rurale le long d'une grande portion droite de la départementale 979 entre Decize et Charrin.
La plus proche autre commune est Champvert au nord ouest.
Devay est en bordure de Loire mais on ne peut franchir cette dernière qu'à Gannay sur Loire en amont ou à Decize en aval.