Probably Dutch/German 'nit' (nothing) + English 'wit' (intelligence) — literally 'no intelligence,' the most extreme in the -wit insult family.
Probably from Dutch or German 'nit' (nothing, not) + English 'wit' (intelligence). A nitwit literally has 'no wit' — zero intelligence. The 'nit' may come from Dutch 'niet' (nothing) or German 'nicht' (not), or possibly from the English 'nit' (louse egg), implying a brain full of nothing but lice. Key roots: niet/nicht (Dutch/German: "nothing, not"), wit (English: "intelligence, mental
English has a whole family of '-wit' insults organized by exactly how much intelligence you're missing: a 'halfwit' has half; a 'dimwit' has some but it's flickering; a 'nitwit' has none at all. The Dutch 'nit' (nothing) makes it the harshest in the series — literally zero intelligence. It's a Germanic insult taxonomy, from partial to total stupidity, that English speakers deploy with surgical precision.