Osceola is a town in Penn Township, St. Joseph County, in the U.S. state of Indiana. The population was 2,463 at the 2010 Census. It is part of the South Bend–Mishawaka, IN-MI, Metropolitan Statistical Area.