Jamaica Beach is a city in Galveston County, Texas, United States on Galveston Island. As of the 2020 census, the city's population was 1,078. The city is bordered by Galveston to the east and west, the east bay on the north and the Gulf of Mexico to the south.