Dyer is located along the Illinois state line in Lake County, Indiana, 15 miles south of Lake Michigan and 30 miles southeast of downtown Chicago. The town covers approximately six square miles. Neighboring communities include Munster, Schererville, St. John, and Highland. U.S. Highway 30 is the main thoroughfare through the town. Dyer is within minutes of I-80/94, I-294, I-90 (the Indiana Toll Road), I-65, and Illinois 394.
Commuter rail service is provided in nearby communities by Metra and the Northern Indiana Commuter Transportation District (South Shore Rail). Within Dyer, Amtrak provides daily service to Chicago and Indianapolis. Freight rail service is provided through town by the Grand Trunk Western (Canadian National), EJ&E, and CSX railroads. Bus service is available to both O'Hare and Midway airports from neighboring Highland.