When using task templates, it is also worth using predefined fields. It will be best to describe this on use a simple example. Imagine a situation where you have to serve external clients as a company. Each task, that is assigned in a specific project, contains information for which client, the work is being performed. If applicants are given the option of manually entering the name, most likely a company will appear under many names with small differences between them, such as: the size of letters, dots or spaces.
In the task template, we can define a checkbox and provide values, but what if this information appears in dozens of templates? When creating, every time you would have to define the list from scratch, not to mention the problem if a new company goes on the list and you have to edit dozens of templates by adding a new client. Therefore, it is worth, from the very beginning, to use pre-defined fields and create a library of clients, and then use the predefined field in any number of templates. For each change, you can just edit the pre-defined field in one place, and the change will automatically be visible for each template.