Elsa is a city in Hidalgo County, Texas, United States. The population was 5,660 at the 2010 census. It is part of the McAllen–Edinburg–Mission Metropolitan Statistical Area.
Elsa is located at 26°17′52″N 97°59′34″W / 26.29778°N 97.99278°W / 26.29778; -97.99278 (26.297672, -97.992770), eleven miles north of Weslaco and 13 miles east of Edinburg on State Highway 107 and FM 88.
According to the United States Census Bureau, the city has a total area of 1.5 square miles (3.8 km²), all of it land.