1. Context
I’m using Google Cloud Storage to host public PDF files. I have a direct URL to a file that should be publicly accessible:
https://storage.googleapis.com/my-storage/my-document.pdf
The intention is for any user to be able to access this link directly via a browser.
2. What I’ve done
The bucket my-storage is configured to allow public access.
The object my-document.pdf was successfully uploaded and is listed in the Cloud Storage Console.
The public URL provided by the console matches the one I’m using.
I’ve also verified the permissions of the object individually.
3. The problem
The issue occurs intermittently:
On the first or second attempt to access the URL directly in the browser, I get the following error:
NoSuchKey
The specified key does not exist.
No such object: my-storage/my-document.pdf
After a few more attempts or after some time, the file begins to load normally.
This error suggests that the object doesn’t exist, but it’s definitely present in the bucket.
4. What I’ve tried
Verified the object name (including casing and spacing).
Confirmed public permissions on both the bucket and the object.
Tried accessing from different browsers, networks, and incognito mode.
Waited several minutes/hours after uploading in case it’s a propagation issue, but the error still occurs sporadically.
5. Question
Is there any known reason why public objects in Cloud Storage might intermittently return a NoSuchKey error on first access attempts?
Is there any additional configuration or propagation delay that could explain this behavior?