In recent years, the problems of high cadmium content and low Cd mobility in karst areas compared with non-karst areas have attracted extensive attention. Identifying the difference between the net Cd flux in karst and non-karst areas is crucial for sustainable land management. Basically, rock weathering is a natural source of Cd. While Cd accumulation in soil has increased due to both anthropogenic and natural sources, the contributions of anthropogenic input and rock weathering to soil Cd concentration in karst and non-karst areas remain unclear. In this study, the input (e.g., atmospheric deposition, fertilizer and irrigation) and output fluxes (e.g., leaching and early and later rice harvest) of Cd in farmland soils in karst and non-karst areas of Guangxi from 2017 to 2018 were monitored. The results showed no significant difference (P = 0.289) in the contributions of various input pathways between karst area and non-karst area, and atmospheric deposition (64–55 %) played an important role in the input fluxes. Nevertheless, the low soil pH value and high rainfall in non-karst areas increase Cd mobility and plant availability in soil, causing the output flux in non-karst areas (5.30 g/ha/y) to be greater than that in karst areas (3.17 g/ha/y). According to the national standard, the exceedance rate of Cd in rice grains in non-karst area (17 %) was higher than that in karst area (15 %). Therefore, ecological risk assessment in non-karst areas with high Cd bioavailability should be prioritized. Furthermore, the annual increase rate of Cd concentration in topsoil of karst and non-karst areas was −0.27 μg/kg/y and −1.23 μg/kg/y, respectively. However, the soil Cd concentration in karst and some non-karst areas still exceeded the guideline value. Given that the net input flux of Cd was negative, the accumulation of Cd in soil may be determined by rock weathering.