How to restrict archiving/preprocessing of certain segments?


I manage a reasonably large website (8+ million/month, not counting goals and events) and I would like to understand what the preferred way of resource-intense segment preprocessing is.

I want to keep the daily preprocessed/archived report for all visits, but for (e.g.) every 1st of the month, I’d also like to process several segments that equal to a cohort analysis (which is expensive on the mysql), as well as every monday some minor but still expensive segments that show impact of rollouts on user behaviour compared to the same day last week.

Now, currently I’m doing this with ./console core:archive --force-date-last-n=1 + scripted disabling segments in the database via the deleted flag. This is a bit iffy, since the last-n=1 will also catch the month timeframe in any case, and with some segments, it just doesn’t seem possible.

What would the best way to go about this? Are there any solutions for that kind of problem already out there?

thanks a bunch for any insight!

Also, piwik owns. I didn’t expect that level of analytics in that quality from an open source product. It is very, very much appreciated, and I hope I can contribute in some way or another. It’s good to have actual alternatives to google.


Hello Philip, thanks for feedback and nice words!

This question is a bit complex for this support here, so if you are stuck or need help with this advanced case, please contact Pro support at: and I’m sure you will get good help there.