Did you think about technical solutions to this? You list one obvious one (limiting the Stripe import for free plans to the 30 days you actually display), but the other one I would've looked at immediately is to avoid storing the raw data for free plans entirely, compute your metrics on the fly, and store only the computed metrics. 1000 customers * 30 days * 25 metrics (based on your homepage) * 4 bytes/metric = 3MB, which is trivial for any database to process.<p>In general, I think most engineers these days overuse databases. At Google, common wisdom was "never, ever hit the disk during routine serving", and when I was in the financial industry we'd regularly process the NYSE TAQ data (50GB, about 2B trades) on a single machine nightly.<p>It'd be really, really nice to have growth gated on technical problems. :-)