Our knowledge about population-level effects of abiotic stressors is limited, largely due to lack of appropriate time-series data. To analyse interactions between an abiotic stressor and density-dependent processes, we used experimental time-series data for stage-structured populations (the blowfly Lucilia sericata) exposed to the toxicant cadmium through 20 generations. Resource limitation results in competition both in the larval and the adult stages. The toxicant has only negative effects at the organism level, but nevertheless, there were positive population-level effects. These are necessarily indirect, and indicate overcompensatory density-dependent responses. A non-parametric model (generalized additive model) was used to investigate the density-dependent structures of the demographic rates, without making assumptions about the functional forms. The estimated structures were used to develop a parametric model, with which we analysed effects of the toxicant on density-dependent and density-independent components of the stage-specific demographic rates. The parameter estimates identified both synergistic and antagonistic density–toxicant interactions. It is noteworthy that the synergistic interaction occurred together with a net positive effect of the toxicant. Hence, the effects of such interactions should be considered together with the capacity for compensatory responses. The combination of the two modelling approaches provided new insight into mechanisms for compensatory responses to abiotic stressors.