The Spanish foreign ministry said that three Russian ships -- part of a wider flotilla led by aircraft carrier Admiral Kuznetsov -- had been due to take on fuel and supplies from Friday at the port of Ceuta, a Spanish territory on the north coast of Africa.
There has been concern that the ships could take part in air strikes in Syria, where Russia has been staging a bombing campaign for the past year in support of President Bashar al-Assad and has deployed a naval contingent to back up its operation.
Moscow's decision comes against a backdrop of increasing tensions between Russia and the West over the war in Syria, as well as the conflict in Ukraine.
Just last week, the European Union's 28 leaders -- including Spanish acting prime minister Mariano Rajoy -- signed a draft statement condemning "the attacks by the Syrian regime and its allies, notably Russia, on civilians in Aleppo."
More From This Section
It added that Spain had given Russia permission in September to stop over from October 28 to November 2.
But "faced with information that materialised about the possibility that these ships would help support military actions in the Syrian city of Aleppo, the foreign ministry asked the Russian embassy in Madrid for clarification on this information," it said in a statement.
Following this, Russia cancelled the planned stop-over, although it is unclear whether this decision was made voluntarily or under Spanish pressure.
"It's a decision which has been taken by individual allies, whether they provide fuelling and supplies to Russian ships," he told reporters in Brussels.