 The village is within New Buffalo Township on the shore of Lake Michigan near to the Michigan-Indiana border.According to the United States Census Bureau, the village has a total area of , all land.Grand Beach is located roughly 73 miles east of Chicago, across Lake Michigan.