This block happened on your side of the fence: the request never properly left, because something in the browser stopped it. In practice it is nearly always an extension, an ad blocker, a privacy tool, or a security extension whose rules matched the request's address or shape. Whole pages rarely trigger it; individual resources (ads, trackers, sometimes a needed script or API call) do.
chrome://extensions) and reload. Content blockers first, then security and coupon tools, which also inject and filter requests.A share of your visitors will always see this for ad, analytics, and social requests; that is normal and unavoidable. What is not normal is your own critical resources (checkout, sign-in, media) matching common filter rules. Naming your endpoints and files like advertising (/ads/, track.js, banner) invites blocks; neutral names avoid most accidental casualties.
If resources stay blocked with every extension disabled, check for a managed browser policy (work devices can enforce blocking through the browser itself) and for security software that hooks into the browser. On a personal machine with neither, a corrupted browser profile is the remaining suspect; a fresh profile is the test.
Why does only part of the page break with ERR_BLOCKED_BY_CLIENT? Because blocking works per request. The page loads, then the specific scripts, images, or API calls that match filter rules are stopped individually. A missing video, a dead button, or a blank widget on an otherwise fine page is the typical shape.
Is something being blocked a sign of malware? Not usually; it is the signature of ordinary content blocking working as configured. It becomes a concern only if the blocking appeared alongside an extension you do not remember installing.