San Giovanni Rotondo è situato al centro di un'ampia conca a 20 Km da Monte Sant'Angelo ed a 567 metri sul livello del mare.
Il centro abitato di San Giovanni Rotondo si estende sull'altopiano del Pianoro, a metà strada tra le cime più alte del Gargano, Monte Nero e Monte Calvo. La cittadina conserva ancora la struttura di un antico paese di montagna con costruzioni bianche ricoperte da caratteristici coppi rossi.
Non esistono vere e proprie fonti storiche riguardo alle origini di San Giovanni Rotondo, la tradizione tramanda la storia secondo la quale i suoi primi fondatori sarebbero stati i Greci seguaci di Diomede. I primi insediamenti abitativi risalgono al periodo neolitico, nell'età del ferro il territorio era frequentato da gruppi Illirici che in seguito diventeranno i futuri Dauni.
Nel IV - III sec. a. C. il villaggio fu romanizzato, ad est dell'abitato venne edificato un tempio a forma rotonda, dedicato prima ad Apollo poi a Vesta ed infine a Giano detto "La Rotonda" per la sua forma circolare. A seguito di scavi sono infatti state riportate alla luce tombe riferibili a quell'epoca. In seguito gli abitanti della zona si convertirono al Cristianesimo; il tempio venne abbattuto, e su di esso fu eretta una chiesa dedicata a San Giovanni Battista.
In epoca normanno-sveva l'Imperatore Federico II fortificò il paese, cingendolo di mura e torri (se ne contavano addirittura una quindicina) divenendo una inespugnabile fortezza.
La città assunse l'aspetto di un castello. I pellegrini provenienti dal Tavoliere delle Puglie e diretti a Monte Sant'Angelo per venerare la grotta in cui era apparso l'Arcangelo San Michele, percorrevano la via Sacra Langobardorum. Dopo una sosta ai santuari di Santa Maria di Stignano e di San Matteo, a San Marco in Lamis, si fermavano quasi sempre a San Giovanni Rotondo.
A San Giovanni Rotondo lasciò traccia anche San Francesco d'Assisi, nel 1222, di ritorno dalla Sacra Spelonca di San Michele. Venne costruito un convento francescano che si trovava in via Michele D'Apolito, angolo via Pietro Giannone i ruderi del convento scomparvero dopo il 1700.