Битката при Твърдица е сражение на български отряди, предвождани от Ивайло, и 5-хилядна византийска армия, командвана от пълководеца Априн.
След поражението при Девина византийският император Михаил VIII Палеолог изпраща нова войска срещу Ивайло, наброяваща 5000 души. Решителното сражение се разразява при Еленския проход в подножието на крепостта Твърдица, където ромейските сили са разгромени отново.
Двете победи на Ивайло спасяват Българската държава от византийска опасност.[2]