This paper introduces a flexible risk decomposition method for life insurance contracts embedding several risk factors. Hedging can be naturally embedded in the framework. Although the method is applied to variable annuities in this work, it is also applicable in general to other insurance or financial contracts. The approach relies on applying an allocation principle to components of a Shapley decomposition of the gain and loss. The implementation of the allocation method requires the use of a stochastic on stochastic algorithm involving nested simulations. Numerical examples studying the relative impact of equity, interest rate and mortality risk for guaranteed minimal maturity benefit (GMMB) policies conclude our analysis.