Gold prices lost around 2 percent for the week, but managed to log a slight daily gain on Friday, recovering from their lowest in nearly three months hit earlier in the session, after disappointing U.S. payrolls data tempered speculation that the Federal Reserve will raise interest rates any time soon.
Bullion pared some gains earlier after Ukraine and pro-Russian rebels agreed a ceasefire, seen as the first step towards ending a conflict in eastern Ukraine that has caused the worst standoff between Moscow and the West since the Cold War ended.
U.S. employers hired the fewest number of workers in eight months in August and more Americans gave up the hunt for jobs, providing a cautious U.S. central bank with more reasons to wait longer before raising interest rates.
"The higher gold prices are reflecting the expectation the Fed will not immediately raise interest rates after the weak job numbers, but the ceasefire deflated safe-haven appetite somewhat," said Alfonso Esparza, senior currency strategist at Toronto-based online forex broker Oanda.
for December delivery ended up 80 cents at $1,267.30 an ounce, down 1.6 percent on the week, dragged by economic optimism. Meanwhile, spot gold was rose 0.4 percent at $1,266 an ounce, having earlier risen as high as $1,273.45.
In overnight trade, the metal hit $1,256.90, its lowest since June 11.
The U.S. Labor Department said nonfarm payrolls rose 142,000 last month, the smallest increase in eight months.
U.S. short-term interest rate futures contracts rose after the report, leading traders to boost bets the Fed will not raise interest rates until the second half of 2015.
In the main physical gold markets, where demand has been soft in recent months, buying picked up slightly. Asian dealers said premiums in China, the top buyer of gold, rose to $4 to $5 an ounce above spot prices, from $3 in the previous session.
However, SPDR Gold Trust, the world's largest gold-backed exchange-traded fund and a good measure of investor sentiment, said its holdings fell 4.78 tons to 785.73 tons on Thursday - the biggest one-day drop since April 16.
—By Reuters with CNBC