The debate followed a referendum in Ireland in which the population voted massively in favour of allowing same-sex marriage.
"This is an unmistakeable signal to the federal government and the Bundestag [German parliament]," said Axel Hochrein of the Lesbian and Gay Federation (LSVD).
"Discrimination against same-sex couples is incompatible with a democratic system."
Although the Bundesrat did not vote for a draft law, the move increases pressure on Chancellor Angela Merkel to confront more conservative voices in her own Christian Democratic Union (CDU) – and the more strongly religious Bavarian Christian Social Union (CSU).
Currently, homosexual couples can enter a civil partnership ('Eingetragene Lebenspartnerschaft', registered life partnership) in Germany and enjoy most of the same rights as married couples following a series of test cases in the Supreme Court.
But there remains stiff opposition in the Bundestag, the lower and more powerful house of parliament.
The Bundesrat, composed of representatives from the largely left-wing state governments, is easy to bring on side.
But the CDU-CSU dominates the Bundestag, and is mostly against 'marriage for all'.
Pro-gay marriage Social Democratic Party (SPD) MPs would also be forced to vote against any bill that came up for debate under their coalition agreement with the CDU-CSU.
But campaigners are determined to fight on.
"The Union [of CDU and CSU] is the only political power in the Bundestag sticking to the homophobic blockade," Hochrein said.
"But the current debate shows that more and more Union MPs are unhappy to stand responsible for an absurd policy before their constituents.
"Reactionary theories don't win elections."
Rheinland-Pfalz minister-president Malu Dreyer and member of the Bundesrat said after the vote "nothing is more powerful than an idea whose time has come."