You are close on the numbers but not the reason for them.
They are impacted by how well your battle
Is (how many flames)
You could have searched the forums for this.
If when attacking you get 5 flames, your recovery will 66.6%. If you are defending and you hold the attacker to less than 10%, you also get minimum revive of 66.6%
If you are attacking and get less than 10%, you will get max revive or 99%. If when defending the attacker manages 5 flames, you also get 99%
The idea being that when you have good battles (do well) your recovery will be less as you will have both earned more reward as well as lost less troops.
And if you are wondering if it is a good idea to do poorly on purpose to get 99% revive. The answer is no. You get about 3.2 glory per troop lost when factoring in revives and reuse of troops who survived, When you get full revive your glory is less than 1 per troop lost.