Depending on what’s listed in your WebPageTest results for Cached Static, you might NOT be able to resolve the issues because you don’t control the web servers the assets are hosted on.
Using Bubble.io as an example, here’s their WebPageTest results’ “Leverage browser caching of static assets” section under Details:
WebPageTest Optimization Check Results - Virginia USA - E... Cable : bubble.io - 07/13/21 19:09:06
All the way down under the Glossary section, it states this for Cache Static:
What is checked - An “Expires” header is present (and is not 0 or -1) or a “cache-control: max-age” directive is present and set for an hour or greater. If the expiration is set for less 7 days you will get a warning. If the expiration is set for less than 1 hour you will get a failure. This only applies to max-age currently.
From the Bubble.io WebPageTest result, one of the Cache Static “FAILED” assets was this:
FAILED - (No max-age or expires) - https://api.segment.io/v1/p
So that “FAILED” because there is no expires header or max-age present for that Segment.io script. This means that the user’s browser won’t be able to cache that script in the browser cache. Since that script is on Segment.io and NOT on Bubble.io’s web servers, Bubble.io can’t do anything about this. Bubble.io doesn’t control that web server.