De eerste schriftelijke vermelding van de stad Teplá stamt uit het jaar 1197. De stad werd genoemd in een lijst van de graaf Hroznata, waarin gesproken werd over het in 1193 opgerichte Klooster van Teplá.
De eerste eeuwen verliepen niet voorspoedig voor de stad. In de jaren 1380 en 1381 vond een pestepidemie plaats in de stad, waaraan een groot deel van de bevolking overleed. In 1421 werd Teplá deels vernietigd door de Hussieten, waarna de stad in 1427 en 1431 ook nog tweemaal belegerd en geplunderd werd door de katholieken. In 1503 werden nieuwe stadsverdedigingswerken, met vier poorten en torens, gebouwd.
In de 16e eeuw was al het onheil nog niet voorbij. In 1537 werd grote schade aangericht door een grote stadsbrand, en in 1549 sloeg de pest opnieuw toe, waarna in 1611 weer een groot deel van de stad uitbrandde. In de Dertigjarige Oorlog werd de stad nog meermaals geplunderd. In september 1647 vond bij de stad een twaalf dagen lange slag plaats tussen de keizerlijke en Zweedse troepen. De Zweden wonnen de strijd en plunderden de stad. In 1669 brandde het gemeentehuis af, met daarbij nog elf omliggende huizen. In 1747 vond nogmaals een stadsbrand plaats, deze keer werden 91 huizen vernietigd. Precies 50 jaar later was het opnieuw raak: de school, de kerk en 205 andere gebouwen brandden uit.
In 1898 werd er Teplá op het spoorweggennet aangesloten. De spoorlijn Karlsbad - Mariënbad werd geopend. Sinds de 19e eeuw heeft de stad zich ontwikkeld tot een handwerkersstadje. Teplá werd de zetel van een district en een rechtbank. Vanaf 1918 hoorde de stad bij Tsjechoslowakije, maar niet voor lang. In 1938 ging Teplá tot het Duitse Rijk behoren en werd het zetel van het Duitse landkreis Tepl. Op 6 mei 1945 werd de stad bezet door het Amerikaanse leger, waarna het weer onderdeel van Tsjechoslowakije werd. In datzelfde jaar werden de meeste Duitse inwoners uit de stad uitgewezen.
In 1949 verloor Teplá zijn status van districtsstad en verplaatste de zetel van het district Teplá naar Toužim. Op 1 juli 1960 werd de stad deel van okres Karlovy Vary. Sinds 1 januari 2007 hoort Teplá bij okres Cheb.