In safety-critical applications it is often possible to exploit software techniques to increase system's faulttolerance. Common approaches are based on data redundancy to prevent data corruption during the software execution. Duplicating most critical variables only can significantly reduce the memo ry and performance overheads, while still guaranteeing very good results in terms of fault-tolerance improvement. This paper presents a new methodology to compute the criticality of variables in target software applications. Instead of resorting to time consuming fault injection experiments, the proposed solution is based on the runtime analysis of the variables' behavior logged during the execution of the target application under different workloads.