Rayo Vallecano came from behind to beat Real Madrid 3-2 on Monday with the champions suffering their first loss in La Liga this season.
The result left Barcelona two points clear at the top in the points table. Rayo took an early lead in a see-saw game before Real rallied to 2-1 ahead. Rayo equalised before half-time before sealing a famous win with a twice-taken penalty from Oscar Trejo in the 67th minute.
Barcelona are top on 34 points, two ahead of Real Madrid and ten ahead of third-placed Atletico Madrid. Following their third consecutive win, Rayo climbed to eighth place, two points off the European qualification spots.
Since losing Ballon d'Or winning striker Karim Benzema to a thigh injury last month, Real have won only one of their last three games in all competitions.
On Monday evening, Real missed several chances in an end-to-end affair against Rayo who are one of the most prolific goalscoring teams in La Liga this season.
“It was a bad night,” Ancelotti said. “We didn’t play a good match.”
It was only Madrid’s second defeat in all competitions, after a loss at Leipzig in the group stage of the Champions League last month. Madrid won 15 of their first 19 games this season, with three draws.
“It hurts to lose but when you evaluate the first part of the season, we did well,” Ancelotti added. “We are in good position in the league and advanced in the Champions League, which was our main objective.
"I wasn't surprised because we all know how they play, they were better and more precise than us today and it's a well deserved win for them.
"We lost too many challenges. They were overwhelming. It doesn't matter if you have more quality if your rivals have more intensity than you. I think we started the season well but the team has felt the exhausting schedule ahead of the World Cup."
The result came as Liverpool were given chance to avenge last season's Champions League final defeat at the hands of Real Madrid after Jurgen Klopp's side were drawn on Monday to face the holders again in the last 16.