Merkel voted against a law to legalise same-sex marriage which passed parliament, saying she believed it was preserve of a man and a woman.
Berlin: German lawmakers have voted to legalise same-sex marriage in a snap vote only days after Chancellor Angela Merkel changed her longstanding position.
Lawmakers voted 393 for legalizing "marriage for everybody" and 226 against with 4 abstentions.
Meanwhile, Merkel voted against a law to legalise same-sex marriage which passed parliament, saying she believed it was the preserve of a man and a woman.
"To me, marriage as defined in the German basic law means the marriage between husband and wife, and that is why I vote against the law today," she said shortly after the vote.
But she did say that her thinking had changed on the question of child adoption by same-sex couples, which she long opposed, labelling her past comments on it "unsatisfactory".
"Since then I have thought a lot about the matter of child welfare and have now... come to the conviction that same-sex couples should be able to jointly adopt children," she said.
Merkel had allowed her conservative party's lawmakers to vote their conscience rather than follow the party line in the vote, which was strongly supported by leftist parties.
Germany has allowed same-sex couples to enter civil partnerships since 2001, but same-sex marriages remain illegal.
All of Merkel's potential coalition partners after the September 24 election, including the center-left Social Democrats of her challenger, Martin Schulz, have been calling for same-sex marriage to be legalized.