A target type is used to filter the assets during the data collection and the evaluation process.
See About target types.
A custom target type must be created when you want to collect data and run an evaluation for the custom asset type.
See Creating a new asset type.
See Working with custom asset types.