Спробую викласти власні ознаки гівнокоду; але ще раз, це лише випливає з визначення, див. вище.
1. Помилки вирівнювання, суміш пробілів та табів, кілька дій в одному рядку.
2. Недостатні коментарі, зайві коментарі, незрозумілі коментарі, закоментовані рядки в комітах.
3. Незрозумілі назви ідентифікаторів, закороткі, задовгі, неоднорідні.
int some_variable, OtherVariable, x3, integer, one_MoreVariable;
4. Неоднорідна поведінка керівних конструкцій (кілька break і continue всередині складних умов у циклі, половина умов на параметри обробляється на початку функції, друга половина - в else наприкінці; goto, крім найочевидніших ситуацій; варіанти switch не за порядком).
5. Надмірність (зайві залежності; додатковий клас там, де можна використати стандартний чи просто функцію; переускладнений алгоритм; зловживання copy-paste). Коротше, порушення DRY, KISS, YAGNI.