Maths : Keeping total of last 30 days and previous 30

you could use an FRAM to store the data in a non volatile way.

That would give you enough storage, a 64K FRAM can store ~16000 uint32_t so roughly 40 years of pulse-days. Or more than a year of pulses/hour or ....