Both Joe Reedy of the Cincinnati Enquirer and Pro Football Talk reported that Owens' contract will be worth $2 million, with an additional $2 million possible in bonuses.
Owens had been rumored to be in close communication with the Bengals recently, with a report earlier Tuesday stating that Cincinnati wanted to have T.O. signed within 48 hours.
St. Louis had also thrown its hat into the ring as a possible destination for the veteran wide receiver, but the Rams backed out of the race Monday. An ESPN report Tuesday mentioned that the Jets also may have had interest in Owens.
Owens, 36, is coming off a season where he made 55 catches for 829 yards and five touchdowns in Buffalo.
In Cincinnati, he'll be teamed with Chad Ochocinco -- like T.O., one of the more in-your-face personalities in the league -- as well as Antonio Bryant, recently brought over to the Bengals from Tampa Bay. Bryant, though, has been dealing with a lingering knee issue, which could have precipitated Cincinnati's interest in Owens.