answer
A script is the actual program which checks details of your (finds/hides/trackables).
Tags are configuration for the script, so that the same script can be used for different caches.
For example, there's a script for checking the length of your longest streak (days in a row with finds). That same script can have different tags to be used as a checker for a cache with a challenge of a 100 day streak and another cache with a challenge of a 365 day streak.
Edited to add:
If you're wanting a checker for a new challenge cache, the first step is to search to see if there is a script already which can handle the conditions of the cache. If there is, a tag can be created on that script. If not, a new script will need to be created and then a tag can be created on the new script.
From:
https://project-gc.com/qa/?qa=6639/anyone-explane-how-scrips-the-tags-for-the-challenge-checkers