Skip to main content
HTML Validation

The string following “&” was interpreted as a character reference. (“&” probably should have been escaped as “&”.)

About This HTML Issue

When the characters right after an unescaped & spell a known entity name, the parser reads them as a character reference instead of literal text.

HTML treats & as the start of a character reference such as &, ©, or ®. Many of these references are also recognised without their trailing semicolon, so a bare & followed by a name like reg, copy, or para gets converted to ®, ©, or . The validator reports this because the result is almost never what the author intended.

This usually bites in URL query strings, where parameter names happen to match entity names. In ?id=1&reg=eu, the &reg turns into ®, so the link points somewhere different from what the source shows. Escape every literal & as & to keep the text intact.

HTML examples

Invalid

<!-- &reg becomes ® and &para becomes ¶ -->
<a href="/news?id=10&reg=europe&para=3">Read the report</a>

Valid

<!-- The & characters are kept literal -->
<a href="/news?id=10&amp;reg=europe&amp;para=3">Read the report</a>

Browsers convert &amp; back to a single & before requesting the URL, so the link works exactly as written while the markup stays valid.

Find issues like this automatically

Rocket Validator scans thousands of pages in seconds, detecting HTML issues across your entire site.

Help us improve our guides

Was this guide helpful?
🌍 Trusted by teams worldwide

Validate at scale.
Ship accessible websites, faster.

Automated HTML & accessibility validation for large sites. Check thousands of pages against WCAG guidelines and W3C standards in minutes, not days.

Scheduled Reports
API Access
Open Source Standards
$7 / 7 days

Pro Trial

Full Pro access. Cancel anytime.

Start Pro Trial →

Join teams across 40+ countries