Elva har utspring i de sørvestlige utløperne av Det sentralrussiske platå, rundt 30 km vest for byen Sumy, og renner herfra i sørvestlig retning. I det midtre løpet skjærer den høre bredden seg dypt inn i Poltava-platået. Sula munner ut i Krementsjuk-reservoaret. På grunn av oppdemmingen har elva nå et stort delta med mange øyer, hvor sjeldne fugler hekker. De største sideelvene er Udaj, Romen og Orzjytsja.