The 34-year-old reached agreement on a one-year contract, pending completion of his physical, on Thursday. The signing became official on Friday.
With Olivo coming in three days before Opening Day on Monday at Washington, the Marlins have optioned catcher Kyle Skipworth to Triple-A New Orleans.
Olivo was in camp with the Reds as a non-roster invitee, and he was informed on Tuesday that he would not be making the club. Olivo was weighing whether to accept the $100,000 retention fee by staying in the Reds' Minor League system.
But he opted to be released and pursue other options. The Marlins had immediate interest.
Olivo now becomes a right-handed-hitting complement to Rob Brantly.
Olivo signed for $800,000, but the Marlins may not necessarily be on the hook for the entire amount. As part of his contract, within the first 45 days of the MLB season, the catcher can decline a Minor League assignment, which again would make him a free agent.
For now, he offers veteran experience.
Entering Spring Training, the Marlins were anticipating Jeff Mathis would back up Brantly. But on Feb. 23, in Miami's first Grapefruit League game, Mathis broke his right collarbone. He isn't expected to be ready for big league games until early May.
This spring with the Reds, Olivo appeared in 21 games, and he was 6-for-36 with one home run.
Olivo will be making his second stint with the Marlins, for whom he initially played in 2006-07. In each of those seasons, he belted 16 home runs. Also in '06, Olivo was behind the plate for Anibal Sanchez's no-hitter against the D-backs.
The past two years, the veteran was with the Mariners.
Olivo is a .241 career batter with 141 home runs in 11 seasons.