Fluid CPU close to max on free tier

Hi, I’m currently using vercel to host my website (water-watch.co.uk). We receive about 40 viewers a day and have at the minute many requests as google/bing crawls us. As such, I’m having issue with the fluid CPU threshold on free tier.

We’ve consumed 3hr 50 of the 4hr limit. Many efforts have been taken to cut this further, caching all our static pages but the issue is since we’re a site with live data, this isn’t going to always be possible. The bulk of our minutes come from our individual site pages which do a call to a cloudflare worker, collect the data stored in dynamobd and give it to vercel, using an edge function. Is there any way to further cut this? We’ve increased dynamo provisioning but with a 2.7Gb database, things will always be a challenge.
Middleware also consumes about 20% of this but I’m a bit hesitant as I’m less familiar with CF UI compared to vercel.

As such I’m looking to temporarily switch to pro to keep the site alive, but it’s honestly incredibly confusing. Parts of the site seem to imply we’d loose our fluid allowance from free and just have to pay?? So what am I giving $20 for!!! If someone could carify that would be appreciated. We’re a next.js based app if that helps

40 viewers/day is low for 3h50 of CPU, so before pinning it on crawlers or compute, confirm your actual request count in the logs. If it’s far above your real traffic, the usual hidden cause is your own app re-firing server renders — a router.refresh() / auto-refresh on tab focus or navigation, aggressive client-side polling, or default prefetch firing a burst of RSC requests on every page. (A third-party uptime monitor on a tight interval does the same.) The tell is a repeating, multi-route request pattern in the logs that no human would produce.

If real crawlers are a big share: a robots.txt blocking the heavy dynamic pages (the Worker → DynamoDB ones) stops bots firing that chain on every hit.

And cache the data layer, not just the pages — even live data usually tolerates a 30–60s revalidate, so repeat hits serve from cache instead of re-running the chain.

(On Pro: it raises your limits and bills overage rather than pausing — it doesn’t take your free allowance away. But worth trying the above first.)

Also, it is 30 days rolling period - does not reset to zero immediately.