Tanning industry has been identified as a significant source of heavy metals; however, heavy metals contamination in farmland soil due to small-scale tanning activities remains unstudied. Here, samples from topsoil, profile soil, water and sediments in the vicinity of a small-scale tanning area in Nanning, Guangxi Zhuang Autonomous Region, southern China, were collected to explore the contamination characteristics and source apportionment of Cd, Cr, Hg, As, Cu, Pb, Ni and Zn. The results show that the farmland soil was mainly contaminated by Cr and its content was 33.40-3830.00mgkg-1. The highest level of Cr, Cd and Hg was above their thresholds, while the average contents of Cd, Cr, Pb and Hg exceeded the corresponding background levels. Moreover, enrichment of Cr in soil profiles and stream sediments were also observed, whose concentrations varied from 11.50 to 2590.00mgkg-1 and 738.00 to 11,200.00mgkg-1, respectively. Concentrations of Cr in top soils and soil profiles from farmland surrounding the stream were significantly higher than those from other areas, and the soils surrounding the stream were moderately to heavily polluted. The multivariate statistical analysis indicated that the heavy metals originated from traffic (Cu, Ni, Zn, Hg, and Pb), agriculture (Cr and Cd) and nature (As). Source apportionment with PMF model results showed that the relative contribution rates of heavy metals by traffic, tanning, agriculture, other industrial activities and natural sources were 16.00%, 18.88%, 20.88%, 22.04% and 22.20%, respectively. These findings indicate that small-scale tanning activities could also lead to heavy metal accumulation in the surrounding environment, which requires decision-makers to pay more attention and to develop effective remediation procedures.