# CDN (/academy/cdn)



Your logo should not commute.

A **CDN** — content delivery network — is a stack of extra copies of the heavy, boring files, parked in cities your judges already live in. Images. JS. CSS. The stuff that is the same for everyone. The original can sit in one region. The copies do the greeting.

Without one, every refresh walks to headquarters. That walk is [latency](/academy/latency). A judge in another country feels it in their shoulders even if they cannot name it. With one, they grab the nearby copy. Your origin barely noticed.

Open the [builder](/builder), pick Next, [deploy](/academy/deploy) to Vercel or a similar lobby. You already have this. You did not "set up a CDN." The host parked the dining-room files at the edge of the network for you.

**Copies lie on purpose**

A CDN is a [cache](/academy/cache). Update `logo.png` and you may still see last night's logo until the copy expires. That is not your app being haunted. That is a leftover you promised could sit.

The hackathon fix is boring and good:

* Fingerprint the filename (`app.83f1.js`) so a new [deploy](/academy/deploy) is a new name.
* Do not put personalized, logged-in HTML on the CDN and expect it to stay private and fresh. The network is for the shared pile. Your [API](/academy/api) is for the person.

[Edge](/academy/edge) is the cousin that runs a little code in those same cities. A CDN mostly hands out finished files. Know which one you asked for.

create-hackhaton-space-stack will give you a [frontend](/academy/frontend-backend) full of assets. The host's CDN is why those assets do not all fly from one basement. You still own the stale-copy bug. You just have to know you asked for leftovers.

**What this unlocks**

Once you see the extra copies, "why is the page old" and "why is the page slow" stop being the same bug. Slow is distance. Old is a leftover. The [CLI](/academy/cli) scaffold will not teach you this. The first custom font that refuses to update will.

Ship the files close to the room. Keep the truth at home.
