By default, you set a number of tags (and if you want, a selection of specific tags) that people can use in their requests -- for example, maybe you allow people to request a fandom and two characters. Optional tags add an extra option to the sign-up page: the person signing up can put any canonical tags they want, of any kind, into the optional box.
For a gift exchange, you don't want to offer too many ordinary tags, because that will make it harder to match people up, especially if you promise an exact match on all the tags (you can of course also just promise as good a match as possible).
Optional tags are useful if you want to try and let your challenge members match up on more detailed or obscure requests, but want to ensure you can match without too much pain. The matching process will try to match people on these optional tags, but if it can't, it will fall back to the basic tags.