The Alvin area was settled in the mid-19th century when bull ranches were established in the area. The Santa Fe Railroad eventually expanded into the area, and a settlement was established along the railroad. Alvin was originally named "Morgan" by the town's residents in honor of the settlement's original resident, Santa Fe employee Alvin Morgan; upon discovery that the name Morgan had been taken, the town named itself after Morgan's first name. The town was officially incorporated in 1893, making it the oldest incorporated settlement in Brazoria County. Alvin Morgan received a land grant from the state of Texas prior to 1891.
As of 1933, Alvin was a sundown town, where practically no African Americans were allowed to live.
On July 25, 1979, Tropical Storm Claudette stalled over Alvin and inundated the region with 45 inches (1,140 mm) of rain in 42 hours. The total included 43 inches (1,090 mm) in 24 hours, at the time the maximum 24-hour rainfall in American history.