Gold prices fell to a near four-month low on Tuesday as the dollar gained and investors preferred riskier assets, dampening the safe-haven metal's appeal.
Spot gold was down 0.6 percent at $1,266.98 per ounce, after falling to its lowest since Dec. 26 at $1,265.90.
U.S. gold futures fell 0.7 percent to $1,268.70 an ounce.
"Gold traders are on the sidelines because of the strength in the dollar, stock and bond markets," said George Gero, managing director at RBC Wealth Management.
"Gold (market) is taking a back seat, waiting for something solid like inflation numbers or some political changes in the U.S.; until then, prices are expected to trade in the lower ranges."
Denting appeal for bullion, the dollar index held near a three-week high as a drop in market volatility boosted demand for riskier assets, with higher U.S. bond yields also offering support to the U.S. currency.
Also, U.S. stocks were trading higher on better-than-expected corporate results.
"There is risk-on sentiment, and no flight to safety now, even with what happened in Sri Lanka," said Phillip Streible, senior commodities strategist at RJO Futures.
Attacks on churches and luxury hotels in Sri Lanka on Sunday killed over 300 people and wounded more than 500.
Adding to gold's headwinds are better-than-expected economic readings recently from both the U.S. and China, contributing to the metal's decline of about 6 percent from its 2019 peak touched in February.
Markets are now awaiting the release of U.S. GDP data later in the week for indications about the strength of the world's largest economy.
Analysts and traders said gold's break below key support levels last week, including the 100- and 50-day moving averages, signalled further downside for prices.
Indicative of sentiment, holdings of SPDR Gold Trust, the world's largest gold-backed exchange-traded fund, were at their lowest since Oct. 26.
In other metals, silver fell 1.5 percent to $14.76 per ounce. Platinum was down 0.9 percent, to $887.46 per ounce, having hit a two-week high of $911.75 in the previous session.
Palladium fell 0.4 percent to $1,381.02 per ounce, after falling as much as 3.5 percent in the previous session.