The deal is worth $7 million over one year and includes $5.5 million in guaranteed money, a source told ESPN's Adam Schefter.
Olsen was released by the Carolina Panthers at the end of January following his ninth season with the club. He visited the Washington Redskins, Buffalo Bills, and Seattle before choosing to join Russell Wilson and the Seahawks.
Olsen made 14 appearances for Carolina in 2019, posting 52 receptions for 597 yards and two touchdowns. He was derailed by foot injuries the previous two seasons, ending his run of three straight 1,000-yard campaigns from 2014-16.
The addition of Olsen gives the Seahawks a viable starter in the event Will Dissly, who's recovering from a torn Achilles, isn't ready for the beginning of the 2020 season.
Olsen, who began his career with the Chicago Bears in 2007, will turn 35 in March. He contemplated retiring to commence a career in broadcasting before solidifying his NFL return with Seattle.