The term is cultural, not technical. From Wikipedia:
There is no standard for defining the term, and some difference of opinion is possible as to the degree to which a given operating system or application is "Unix-like".
There do exist standards, most notably the various POSIX standards and the Single UNIX Specification, which can be used as a rough gauge for whether a system is Unix-like. But an OS doesn't have to conform perfectly to those standards to be considered a *nix. Conversely, compatibility layers that implement those standards can be implemented for OSes that are generally not considered *nices.
Ultimately, like many cultural terms, the real definition of a *nix is something that is similar enough, in whatever ways matter most in context, to all the other things that we call *nices.