Die Giona ist ein rund 15 km langer Fluss, der im SchweizerKanton Tessin entspringt und auf italienischem Staatsgebiet den Lago Maggiore erreicht. Die Quelle liegt am Südhang des Monte Tamaro. Die Giona fließt größtenteils in Richtung Südwest und tangiert die Ortschaft Indemini (Gemeinde Gambarogno). Sie hat eine Länge von 15,1 km, wovon 4,6 km in der Schweiz, 10,5 km in Italien und 120 Meter auf der Grenze liegen.
Sie durchfließt in der Schweiz das Val Giona, das sich in Italien mit der Talschaft Valle Veddasca fortsetzt. Vorerst verläuft die Gemeindegrenze zwischen Maccagno con Pino e Veddasca und Curiglia con Monteviasco entlang der Giona. Beidseits der Flussmündung auf einem weit in den Lago Maggiore vorgeschobenen Schwemmkegel liegt das Dorf Maccagno.