Currently, we purge out of date archives, only that are more than 24 hours (sometimes, up to more than 48 hours old).
If the archiving runs very frequently (eg. the API is used for something all the time), then Piwik will create many archives that are quickly out of date.
we should delete out of date more aggressively.
This will have a side effect:
The above explanation is in preparation of forum posts "there is no data but it used to work" -> Ask "do you use cron, what is timeout in General Settings, check cron runs as often..." I'll probably add it to the FAQ if it's asked often
To produce the most efficient database space usage with current algorithm, it is necessary to archive 'today' (clean up this monthly archive tables), and archive 'this year' (clean up january archive table containing all yearly archives).
For example for one forum user, it went from 1.5Gb to.... 65Mb ;)