Er war das jüngste von fünf Kindern des Francesco (oder Pietro) Oddi, Graf von Antognolla und der Vittoria Biancheri. Von seiner Mutter Seite war er ein Neffe des Kardinals Antonio Banchieri und ein Cousin des Kardinals Giovanni Francesco Banchieri. Ferner war er der Onkel des Kardinals Niccolò Oddi.
Im Konsistorium vom 9. September 1743 kreierte Papst Benedikt XIV. ihn zum Kardinal. Als Kardinalpriester erhielt Oddi die TitelkircheSan Girolamo degli Schiavoni, wo er am 5. April 1745 installiert wurde. Den Bischofssitz von Viterbo nahm er mit dem persönlichen Titel eines Erzbischofs am 22. September 1749 ein. Außerhalb der Stadt erbaute er eine Bischofsresidenz, die von den folgenden Bischöfen La Palenzana genannt wurde. Er wendete hohe Summen auf, um die Kirchen der Diözese mit liturgischem Gerät auszustatten, führte Visitationen durch und betonte die genaue Einhaltung der kirchlichen Riten und Zeremonien. Am 12. Januar 1756 wechselte er zur Titelkirche Santa Anastasia. Er nahm am Konklave 1758 teil, aus dem Clemens XIII. als Papst hervorging.
Im Jahre 1762 berief er eine Diözesansynode ein, was in Rom abgelehnt wurde, doch nach einer Untersuchung durch eine von Papst Clemens XIII. eingesetzte Kommission wurde das Vorgehen des Kardinals für richtig befunden. Seine Titelkirche wurde am 22. November 1758 Santa Maria in Trastevere, am 12. Februar 1759 wechselte er zur Titelkirche Santa Prassede und am 21. März 1763 als Kardinalprotopresbyter zu San Lorenzo in Lucina. Er konnte am Konklave 1769, das Papst Clemens XIV. wählte, nicht teilnehmen. Zum Apostolischen Vikar von Viterbo und Toscanella wurde wegen des hohen Alters und der Gebrechlichkeit von Kardinal Oddi am 22. März 1770 Egidio Mingarelli, ein Priester der Diözese Bologna, ernannt. Giacomo Oddi zog sich nach Perugia zurück, wo er am 2. Mai 1770 in seinem Elternhaus starb. Er wurde in der dortigen Jesuitenkirche beigesetzt.