A stupid or obnoxious person; a derogatory term for someone considered foolish.
From 'cock' (with the sense of a swaggering rooster or foolish person) + 'head'; used as a general insult since at least the 1600s, part of the tradition of animal-based insults in English.
Many insults using animal names actually reflect medieval observations—roosters were seen as loud, aggressive, and vain because they strut around displaying dominance, so calling someone a 'cockhead' implied similar annoying behavior.
Complete word intelligence in one call. Free tier — 50 lookups/day.