Odell Beckham Jr.’s second stint with the Giants ended after three games: 20 snaps, one target, zero catches. New York released him on September 29.

If you watched even one of those games, this wasn’t a shock. It was a formality.

That tweet says everything the box score already told you.

Back in June, the move actually made sense. Harbaugh had coached Beckham in Baltimore. The contract was $1.3 million, pocket change in cap terms. CBS Sports framed the signing as low-cost depth insurance, not some front office getting drunk on 2018 nostalgia.

Then the season started, and the Giants stopped needing the insurance policy. Malik Nabers kept playing. Darnell Mooney kept playing. A rookie third-rounder in Malachi Fields started eating into snaps Beckham never got near.

Jake Nisse put it plainly the same day New York moved on.

A 2-1 team with a receiving room that’s actually producing doesn’t owe anybody snaps out of loyalty.

So spread the blame around. The front office guessed on timing and guessed wrong — consistent with the Giants’ recent offensive decisions all year. Beckham didn’t get many chances, and he didn’t do much with the ones he got. This wasn’t a hard call, just the latest entry in a season full of NFL roster moves.

He’s already moving on in spirit. Per Josina Anderson’s reporting, picked up by Saturday Down South, Beckham texted that “one door closes another door opens. I promise you that!” No team named. But he’s already sure another one’s coming.

MetLife can keep chanting his name. It stopped showing up in the box score weeks ago.