Predicates in Common Lisp are functions that test conditions and return true or false. There are different types of predicates including data type predicates to check types, equality predicates like eq and equal to compare objects, and logical operators like and, or, and not. Specific predicates test for individual data types like numberp, listp, symbolp. Subtypep checks if one type is a subtype of another.