---
title: "Resource hints overview"
category: performance
status: recommended
url: https://webspecification.com/spec/performance/resource-hints/
updated: "2026-06-18T00:00:00.000Z"
sources:
- title: "W3C — Resource Hints"
url: "https://www.w3.org/TR/resource-hints/"
publisher: "W3C"
- title: "MDN — : The External Resource Link element"
url: "https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/link"
publisher: "MDN"
- title: "web.dev — Preload critical assets"
url: "https://web.dev/articles/preload-critical-assets"
publisher: "web.dev"
- title: "MDN — rel=modulepreload"
url: "https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Attributes/rel/modulepreload"
publisher: "MDN"
source_repo: undefined
licence: CC-BY-4.0
---
# Resource hints overview
> Five resource hints — dns-prefetch, preconnect, preload, modulepreload, prefetch — cover every stage of the request lifecycle. Pick the right one for the job.
## What it is
Resource hints are `` declarations that tell the browser to do work earlier than the HTML parser would otherwise discover it. The W3C Resource Hints specification defines four; HTML adds two more (`preload`, `modulepreload`).
| Hint | What it does | Use when |
|---|---|---|
| `dns-prefetch` | Resolve DNS for the origin. | Cheap fallback for older browsers; large numbers of secondary origins. |
| `preconnect` | DNS + TCP + TLS handshake to the origin. | You will definitely request from this origin in the next ~10 seconds. |
| `preload` | Fetch a specific resource at high priority. | Late-discovered critical resource (LCP image, font referenced from CSS). |
| `modulepreload` | Fetch and parse an ES module, including its dependency graph. | Critical JS module that would otherwise be discovered after the parser hits `