The third and final reading of the law expands an existing ban which previously applied to children only.
Propaganda includes any attempt to promote homosexuality online, in film, books, advertising or in public. Any event or act regarded as breaking the law could incur a heavy fine.
The fine will be up to 400,000 roubles (£5,400) for individuals and up to 5 million roubles (£68,000) for legal entities. Foreigners could face 15 days of arrest and subsequent expulsion from the country.
Critics see the move as an attempt to further intimidate and oppress sexual minorities in Russia, where authorities have already used existing laws to stop gay pride marches and detain gay rights activists.
Lawmakers say they are defending morality in the face of what they argue are “un-Russian” decadent values promoted by the West.
But human rights groups say the moves are designed to outlaw representation of minorities such as lesbians, gay men, bisexuals and transgender people (LGBT) in public life.
“LGBT today is an element of hybrid warfare and in this hybrid warfare we must protect our values, our society and our children,” Alexander Khinstein, one of the bill’s architects, said last month.
LGBT Network, which offers legal aid, has called the legislation an “absurd” attempt to humiliate and discriminate against the LGBT+ community.
Last month, TikTok was fined 3 million roubles for promoting “videos with LGBT themes”, while Russia’s media regulator asked publishing houses to look at withdrawing all books containing “LGBT propaganda” from sale.
The bill needs to be reviewed by parliament’s upper house and signed by president Vladimir Putin before coming into force.
Russia was the previous host of the World Cup and comes at a time of a huge row about Qatar, currently hosting the tournament, and its ban on homosexuality.