Magic often happens to Auburn in the Iron Bowl. Kick-6s. Punt Bama Punts. Bo over the top.

And Saturday, in front of a rollicking Jordan-Hare Stadium crowd, it happened again.

Joseph Bulovas missed a tying 30-yard field goal attempt in the final minutes, No. 15 Auburn returned 2 interceptions for touchdowns and held on to upset the No. 5-ranked Crimson Tide 48-45 — eliminating Alabama from College Football Playoff contention in the season’s final week.

Mac Jones passed for 335 yards and 4 scores, and Najee Harris rushed 146 yards and a score. But Auburn answered every Alabama challenge — from the opening kick to the final whistle.

Auburn finishes the regular season 9-3 overall and 5-3 in the SEC. Alabama ends 10-2, 6-2.

Alabama was the beneficiary of an early replay review, as Shedrick Jackson was ruled in real time to have hauled in a Bo Nix pass just out of bounds on the field. The replay official upheld the ruling, and Auburn was forced to punt.

The resulting Tide possession turned into points, just not the kind that Alabama wanted. Despite Harris galloping for 52 yards on 5 carries, a Jones TD pass was nullified by a holding call and the Tigers stiffened close to the red zone. But Joseph Bulovas was true from 43 yards — his first make of over 40 this season — to give Alabama an early 3-0 lead.

Auburn responded 2 possessions later to take the lead, as Christian Tutt returned a punt 37 yards to the Tide 32, and Nix danced in 3 plays later for a 7-yard TD and a 7-3 advantage.

Alabama answered with a 14-play, 75-yard drive that was about as vintage Crimson Tide as a bag of Golden Flake and an ice-cold Coca-Cola. Jones completed several short passes and both Harris and Brian Robinson Jr. chewed up chunks of yardage on the ground — with Harris vaulting in for a 6-yard TD to make it 10-7.

Auburn evened it on the ensuing possession, as the Tigers went 50 yards on 11 plays but sputtered to a stop at the Tide 25 — as Anders Carlson nailed a 43-yarder to make it 10-10.

Auburn’s defense solved Jones and Alabama just seconds later, as Jones lofted a long out route too long — right into the hands of defensive back Smoke Monday, who went 22 yards for a Pick-6 TD and a 17-10 lead that set Jordan-Hare Stadium shaking with glee.

All that momentum? It lasted just 14 seconds.

Jaylen Waddle, perhaps America’s most dangerous kick returner, fielded the ensuing kickoff at the Tide 3 and outraced every Tiger on the field for a 97-yard TD to make it 17-17.

Alabama’s defense forced the issue just 2 plays later, as Xavier McKinney stripped Boobie Whitlow of the football and Christian Harris pounced on it. A 33-yard Jones pass to DeVonta Smith put the Crimson Tide in the red zone, and 3 plays later Henry Ruggs III hauled in a Jones floater in the back of the end zone for a momentum-swinging 24-17 advantage.

Nix broke the Auburn freshman record for passing yards on the ensuing drive via 3 tightrope catches to also give Auburn another TD. Seth Williams hauled in a 37-yarder with a single hand along the near sideline, Will Hastings grabbed what appeared to be a Nix throwaway for 11 yards, and Sal Cannella toe-dragged in the end zone on a 14-yarder to make it 24-24.

The insane first half wasn’t over yet, though, as Jones found Waddle across the middle nanoseconds before being hit — a completion that the future NFL receiver turned into a 58-yard touchdown and a 31-24 lead.

But even when the clock appears to hit zeroes, Auburn was still fighting — as a 17-yard Whitlow reception appeared to still be in progress when time elapsed in the second quarter. But Auburn argued there was 1 second remaining, and review agreed — effectively giving Auburn an extra time out and leaving enough time for Carlson to nail a 52-yarder to cut the Tiger deficit to 31-27 and top off the highest-scoring first half in Iron Bowl history.

After 38 points in the final 6 minutes of the first half, the second half started a bit slower. Alabama quickly went 3-and-out on the opening series, but Auburn took advantage of a shorter field to move to the Tide 25 and set up another Carlson 43-yarder that made it 31-30.

But Auburn’s defense saved the biggest play of the game for the ensuing drive. Alabama had a 1st-and-goal at the 2, and Jones was forced to throw the ball early — bouncing a pass off Harris’ shoulder pad at the goal line and into the waiting arms of Zakoby McClain, who took it 100 yards for an ear-splitting second Pick-6 and a 37-31 lead.

Instead of wilting, though, Alabama responded. Jones hit Ruggs for 24, then Smith for 26 to move the Tide quickly into the red zone. And Waddle scored his 3rd touchdown of the day on a 12-yard TD catch to make it 38-37.

Auburn had a chance to tack on another touchdown before the end of the third quarter, but an unsportsmanlike conduct penalty moved the Tigers out of the Tide red zone, with Auburn settling for a 44-yard Carlson field goal for a 40-38 advantage.

Waddle continued to be a question that Auburn had no answer for, as the electrifying sophomore hauled in his 3rd TD pass — and 4th score of the game — when Jones lofted a 28-yarder to him in the end zone for a 45-40 lead.

Auburn answered with an 11-play, 77-yard TD drive and added the 2-point conversion to make it 48-45. Shaun Shivers scored the go-ahead TD on a jet sweep out of the Wildcat formation.

Alabama gave itself a final chance, but as often has been the case, its hopes ended with a missed kick.