The law legalizes possession of up to 1 ounce of the drug, two mature plants and up to four immature plants by people 21 and older beginning on July 1. It does not legalize trade in the drug.
"Today, with mixed emotions, I have signed H. 511," Scott said in a statement, referring to the measure by its legislative number.
He noted that he had vetoed an earlier version of the bill that would have opened up sales of the drug, saying that a state commission would have time for further study before allowing a retail trade in recreational pot.
Neighboring Massachusetts, nearby Maine and six other states have legalized marijuana use as a result of voter initiatives.
New Hampshire's House of Representatives on Tuesday passed a similar bill to legalize recreational marijuana use. That state's governor, Republican Chris Sununu, has said he opposes legalization.
Vermont is the first state to take this step by an act of the legislature, rather than as a ballot initiative. While it is one of the most politically liberal states, it is also one of 23 in the nation that do not allow ballot initiatives.
"This is a great step forward for the state and the whole region," Matt Simon, New England political director for the Marijuana Policy Project said in a statement. "Responsible adults will soon have the freedom to enjoy a safer option legally, and law enforcement will be free to concentrate on serious crimes with actual victims."
Possession of small amounts of the drug had already been a civil, rather than criminal, violation in Vermont.
"I personally believe that what adults do behind closed doors and on private property is their choice, so long as it does not negatively impact the health and safety of others, especially children," Scott said.
(Reporting by Scott Malone in Boston; Editing by Andrew Hay)