Use of Specifiers (which and that)
Specifiers are used to indicate which of several possibilities is being discussed by providing more information about the item under discussion. The difference between them is that the specifier, “that”, is used to provide essential qualifying information. For that reason, it is not preceded by a comma. The specifier, “which”, is used to supply additional, but non-essential information, and is always preceded by a comma. When used in non-specifier roles, the preceding rule does not apply.