The franchise tag lets an NFL team keep one player who would otherwise become a free agent, on a one year contract at a salary tied to the going rate for that position. The player gets a guaranteed and well paid season, the team gets another year to negotiate a longer deal.
There are three versions. The exclusive tag stops the player negotiating with anyone else at all. The non-exclusive tag lets other teams make an offer, which the tagging team can match, and if it chooses not to it receives two first-round draft picks in return. The transition tag gives a right to match but no compensation.
The salary is set by formula rather than by negotiation, based on the top salaries at that position across the league, or a rise on the player's previous pay, whichever is greater. That makes it a good one-year payday and a poor substitute for the guaranteed money in a long contract.
Both sides usually dislike it. The player is a year older with no long-term security and no signing bonus; the team has committed a large block of salary cap space to one player for one season and has only delayed the same decision. It is a way of not deciding, which is why tagged players so often sign an extension before the season starts.