The Cowboys playoff hopes are no more after a sloppy, mistake-filled 21-12 loss to the Seahawks on Christmas Eve at AT&T Stadium.

The day had set up well with running back Zeke Elliott returning, and before kickoff, the Saints and Bengals earned wins that would have aided the Cowboys postseason push.

Then they kicked off and the Cowboys offense couldn't help itself, gift-wrapping all 21 of the Seahawks points on three awful turnovers. Cowboys fans were left with an empty football feeling as some headed home to celebrate the Christmas holiday.

"It was frustrating. It's hard to get over," said Cowboys quarterback Dak Prescott. "I'm' sure I'll get over it at some point, but right now is not the time. It was tough."

With the Cowboys leading 6-0 in the second quarter, Dez Bryant was seen on the sideline complaining to teammates and on the ensuing possession committed an error that shifted the momentum in the game seemingly for good.

With four minutes left in the half, Prescott hit Bryant with a short pass to start the drive, but Bryant was carrying the ball loosely after the catch, allowing Byron Maxwell to punch the ball out and recover the fumble. Five plays later the Seahawks scored their first touchdown of the game.

Prescott threw a pair of costly interceptions, the first of which was an overthrow to Zeke Elliott that Seahawks cornerback Justin Coleman turned into a 30-yard interception return for a touchdown. The pick-6 put the Seahawks in front 14-9.

The turnovers allowing Seattle scored a pair of touchdowns despite gaining just 53 yards total in the game's first 36 minutes.

Prescott thew another interception with the Cowboys driving deep in Seahawks territory late in the third quarter. He and Bryant couldn't connect on a short pass over the middle. It glanced off Bryant's hands and Seattle's K.J. Wright picked it off at his own 20-yard line.

"It's frustration," said Elliott. "We came out moving in the first half, but we weren't able to get the ball in the end zone. It's hard to get a win in this league when you have three turnovers."

Elliott returned after his 6-game suspension and the Cowboys fed him early with good results. He rushed for 51 yards on 11 carries in the first quarter alone, ending the game with 97 yards on 24 attempts.

The Cowboys opted against giving Elliott the ball, though, when they had a chance to cut into the Seahawks 9-point lead midway through fourth quarter. With first-and-goal at the three, the Cowboys called a run-pass option play. Prescott opted to try and throw but couldn't get the pass off to a wide-open Cole Beasley because there was pressure right in Prescott's face.

Another pass play on second down resulted in a holding call. After a sack, Dan Bailey missed a 34-yard field goal, leaving questions as to why the Cowboys wouldn't try to just run Elliott in the first place.

Instead of a run-pass option, why not just call a run play for Elliott?

"Those are easy afterward," said Cowboys coach Jason Garrett. "Obviously, Zeke is a very good player, we like him and we give him plenty opportunities. In that particular case, it didn't work out well for us."

Not much worked out well for the Cowboys offense on this day. With a chance to make a playoff bid a realistic possibility headed into the final week of the season, the Cowboys failed to score a touchdown. The performance showing the Cowboys simply didn't deserve to make the postseason.

"It's really disappointing," said tight end Jason Witten. "We had a chance and fought there at the end. It's not overly complicated. Opportunities in this league are fleeting. You have to take advantage of them when you can. We just weren't able to do that well enough tonight."

For Witten, it's another opportunity lost. The 15-year veteran has been here many times before, but even after another gut-wrenching loss, he said he's not ready to give up.

"I see too much positive. I really do," said Witten. "I feel too good to think that would end. My intentions are to keep playing."