L'ensemble des terrains affleurants de la commune sont issus de l'ère Cénozoïque. Les sols des vallées datent de la période du Quaternaire, les sols des coteaux datent principalement de la période du Néogène et les hauteurs des collines datent, quant à elles, de la période du Paléogène[2],[3],[4].
Le sol des lits et des rives des rivières est constitué d'alluvions actuelles ou subactuelles de l'époque Holocène (Fz : alluvions de l'Adour et de l'Échez constituées de sables et de galets) ou datant des dernières glaciations de l'époque Pléistocène (Fy1 : alluvions des vallées de l’Adour et de l'Échez constituées de galets, de graviers et de sables ; Fy : terrasse à gros galets, cailloutis à granité sain et matrice sableuse ; Fx : terrasse à galets, cailloutis et matrice argilo-sableuse plus ou moins rubéfiée ; Fw : terrasse à galets, cailloutis et matrice argileuse rubéfiée). Ces sols formant les plaines alluviales de la partie orientale de la commune (vallée de l’Adour) et des bords occidentaux de la commune le long de la vallée du Louet.
Les sols des versants et du bas des coteaux des vallées sont constitués de colluvions et d'alluvions (C : colluvions caillouteuses issues du Pontien et des alluvions du Quaternaire ancien ; FC : alluvions et colluvions de fond de vallée et cônes de déjection associés ; CF : alluvions et dépôts de versant) ; datant aussi des époques de la période du Quaternaire (Holocène et Pléistocène) ou des dernières époques de la période du Néogène (Pliocène et Miocène).
Les parties hautes des coteaux et les hauteurs des collines sont constituées de sols molassiques datant d'époques allant de l'Éocène au Miocène (e-mM : molasses argilo-sableuses jaunâtres à vert-bleu, carbonatées, à graviers et cailloutis ; e-mM1 : niveaux de calcaires palustres à lacustres dans la molasse e-mM), de niveaux de calcaires (m1b3 : niveaux des calcaires d'Auch et de Lectoure supérieur du Burdigalien supérieur ; m2a1 : niveau du calcaire inférieur de l'Astarac de l'Helvétien inférieur), de nappes fluviatiles du Pliocène (pi : nappe alluviale inférieure, graviers à matrice argileuse blanchâtre, à grandes marbrures rouges ; pm : nappe alluviale moyenne, graviers et cailloutis rubéfiés, matrice silto-argileuse jaunâtre crème ; ps : nappe alluviale supérieure, galets et cailloutis polygéniques, matrice sablo-argileuse rubéfiée), et de formations alluviales du Quaternaire (Fv1 : terrasses générations, à gros galets sphéroïdes à facettes, peu altérés et matrice sablo-argileuse plus ou moins rubéfiée).