Entity Tag (ETag)
An HTTP response header providing an opaque identifier (hash or version fingerprint) assigned by a web server to represent a specific version of a resource.
Entity Relationships (GEO Conceptual Hierarchy)
Taxonomy ModelTechnical Explanation & Operational Mechanics
ETags enable efficient client-side and CDN web caching as well as optimistic concurrency control. When a browser fetches a resource, the server includes an ETag header (e.g. ETag: "33a64df5"). On subsequent visits, the browser includes this value in a conditional request header: "If-None-Match: "33a64df5"". If the resource has not changed, the server responds with a lightweight "304 Not Modified" status without a response body, saving significant bandwidth and rendering latency. ETags can be strong (guaranteeing byte-for-byte identity) or weak (prefixed with W/, indicating semantic equivalence).
Technical Example & Practical Implementation
Bandwidth-saving validation cycle between browser cache and server
// Initial Request & Server Response:
GET /assets/bundle.js HTTP/1.1
Host: example.com
HTTP/1.1 200 OK
Content-Length: 450123
ETag: "686897696a7c-87b"
Cache-Control: public, no-cache
// Subsequent Visit (Conditional Request):
GET /assets/bundle.js HTTP/1.1
Host: example.com
If-None-Match: "686897696a7c-87b"
// Server response if unchanged (0 body bytes transmitted):
HTTP/1.1 304 Not Modified
ETag: "686897696a7c-87b"Related Topic Ecosystem & Next Steps
Related Technical Articles
What Is HTTP (Hypertext Transfer Protocol)?
Foundational stateless request-response protocol of the World Wide Web.
HTTP/1.1 vs HTTP/2: Multiplexing & Performance
Head-of-line blocking compared to binary framing and stream multiplexing.
Troubleshooting: HTTP 403 Forbidden Error
Diagnose server authorization denial, WAF IP blocks, and permission issues.
Hands-On Diagnostic Labs
Developer References & Specifications
Continue Learning
HTTP Protocol & Header Inspection Lab
Craft raw HTTP headers and observe conditional 304 responses in the interactive workbench.