Osceola es un pueblo ubicado en el condado de St.
[3] La localidad está ubicada en las coordenadas 41°39′50″N 86°4′43″O / 41.66389, -86.07861.
Según la Oficina del Censo de los Estados Unidos, Osceola tiene una superficie total de 3.53 km², de la cual 3.52 km² corresponden a tierra firme y 0.01 km² son agua.
[4] Según el censo de 2020, en ese momento había 2590 personas residiendo en Osceola.
Del total de la población, el 3.8% eran hispanos o latinos de cualquier raza.