Holmes is an English-language surname with several origins.
The name can be a variant of the surname Holme.
[1] This surname has several etymological origins: it can be derived from a name for someone who lived next to a holly tree, from the Middle English holm; it can also be derived from the Old English holm and Old Norse holmr.
[2] Another probable origin of Holmes is from a placename near Dundonald, or else a place located in the barony of Inchestuir.
The surname is also sometimes an Anglicised form of the Gaelic Mac Thomáis; similarly, Holmes can also be a variant of Cavish, derived as an Anglicised form of Mac Thámhais.