In form, Cunningham is originally Scottish, taken from the place of the same name near Kilmarnock in Ayrshire. This name was originally Cuinneagan, from the Scots Gaelic cuinneag, meaning "milk-pail", and was given its present form through the mistake of a twelfth-century English scribe who transcribed the ending as "-ham", a purely English suffix meaning "village". Many Scottish Cunninghams came to Ireland in the seventeenth-century Plantation of Ulster, and their descendants now form the bulk of those bearing the name in that province, where it is most numerous. As well as these, however, many of native Gaelic stock also adopted Cunningham as the anglicised version of their names. Among these were the Mac Cuinneagain (MacCunnigan) of Co. Donegal, the Ó Cuineagain or Ó Cuineachain (Kennigan/Kinahan) of Co. Antrim, the Ó Connachain (Conaghan) of counties Tyrone and Derry, the Mac Donnegain (Donegan) of Co. Down and the Ó Connagain (Conagan) of Co. Armagh. The most numerous, however, were the Ó Connagan and Mac Cuinneagain of Connacht, where the surname remains most common outside Ulster. The Scottish influx, together with the large number of Irish originals which Cunningham came to represent, have made it common and widespread throughout Ireland.

Cunningham households by county in the Primary Valuation property survey of 1848-64.
Click on a county name for a parish breakdown(paying).
Antrim 73
Armagh 75
Belfast city 57
Carlow 1
Cavan 24
Clare 78
Cork 137
Cork city 21
Derry 69
Donegal 69
Down 364
Dublin 33
Dublin city 25
Fermanagh 14
Galway 158
Kerry 27
Kildare 15
Kilkenny 26
Laois 25
Leitrim 34
Limerick 28
Limerick city 7
Longford 51
Louth 102
Mayo 74
Meath 47
Monaghan 96
Offaly 32
Roscommon 115
Sligo 87
Tipperary 64
Tyrone 114
Waterford 96
Westmeath 93
Wexford 5
Wicklow 19