Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when auditing local business websites, e-commerce sites, or any site where a physical presence affects trust or local search visibility.
.claude/skills/thedaviddias-physical-address/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | -20% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 8% | 0% |
| case-11 | ✓→✓ | = Same ✓ | 5% | 0% |
| case-01 | ✓→✓ | = Same ✓ | -24% | 0% |
| case-02 | ✓→✓ | = Same ✓ | -21% | 0% |
A visible physical address builds user trust (especially for e-commerce and YMYL sites), supports local SEO rankings, and is a requirement for compliance in many jurisdictions.
Check the contact page and footer for a visible physical address. Verify the address is complete (street, city, state/region, postal code, country). Check whether the address uses the <address> HTML element and whether it is backed by LocalBusiness or PostalAddress schema markup.
Add the complete physical address to the footer and contact page. Wrap it in an <address> HTML element. Ensure the address exactly matches the address in your LocalBusiness JSON-LD schema and your Google Business Profile.
Displaying a physical address confirms to users and search engines that a business exists at a real location. For local SEO, the on-page address must match the address in Google Business Profile and LocalBusiness schema — inconsistencies reduce Google's confidence in the data and suppress local rankings.
Check the contact page and footer for visible address text. Verify the address includes: street number and name, city, state/region, postal code, and country. Check for <address> HTML element semantic wrapper. Cross-reference the visible address against any LocalBusiness JSON-LD schema address fields — they must match exactly. Flag if no address is found on either contact page or footer.
For full implementation details, code examples, and framework-specific guidance, see references/rule.md.
Rule page: https://frontendchecklist.io/en/rules/seo/physical-address
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-11 | pass→pass | 12,616 | 9,831 | -22% | 1 | 1 | 0% | 2,056 | 2,161 | +5% | 0 | 0 | — |
case-01 | pass→pass | 11,831 | 7,081 | -40% | 1 | 1 | 0% | 2,551 | 1,932 | -24% | 0 | 0 | — |
case-02 | pass→pass | 9,981 | 5,320 | -47% | 1 | 1 | 0% | 1,648 | 1,299 | -21% | 0 | 0 | — |
case-03 | pass→pass | 9,013 | 5,478 | -39% | 1 | 1 | 0% | 1,651 | 1,350 | -18% | 0 | 0 | — |
case-04 | fail→pass | 10,962 | 5,866 | -46% | 1 | 1 | 0% | 1,947 | 1,556 | -20% | 0 | 0 | — |
case-05 | pass→pass | 5,753 | 3,886 | -32% | 1 | 1 | 0% | 1,174 | 1,218 | +4% | 0 | 0 | — |
case-06 | fail→pass | 8,692 | 6,890 | -21% | 1 | 1 | 0% | 1,465 | 1,589 | +8% | 0 | 0 | — |
case-12 | pass→pass | 12,243 | 10,503 | -14% | 1 | 1 | 0% | 1,944 | 2,303 | +18% | 0 | 0 | — |
case-07 | pass→pass | 10,233 | 6,894 | -33% | 1 | 1 | 0% | 2,045 | 1,871 | -9% | 0 | 0 | — |
case-08 | pass→pass | 9,157 | 5,864 | -36% | 1 | 1 | 0% | 1,582 | 1,412 | -11% | 0 | 0 | — |
case-09 | pass→pass | 8,973 | 5,161 | -42% | 1 | 1 | 0% | 1,758 | 1,368 | -22% | 0 | 0 | — |
case-10 | pass→pass | 7,258 | 4,187 | -42% | 1 | 1 | 0% | 1,651 | 1,288 | -22% | 0 | 0 | — |
case-13 | pass→pass | 9,259 | 3,525 | -62% | 1 | 1 | 0% | 1,810 | 1,069 | -41% | 0 | 0 | — |
case-14 | pass→pass | 12,153 | 5,457 | -55% | 1 | 1 | 0% | 2,904 | 1,542 | -47% | 0 | 0 | — |
case-15 | pass→pass | 8,735 | 2,661 | -70% | 1 | 1 | 0% | 1,637 | 903 | -45% | 0 | 0 | — |
case-16 | pass→pass | 9,783 | 5,416 | -45% | 1 | 1 | 0% | 1,692 | 1,407 | -17% | 0 | 0 | — |
case-17 | pass→pass | 6,548 | 3,596 | -45% | 1 | 1 | 0% | 1,291 | 1,098 | -15% | 0 | 0 | — |
case-18 | pass→pass | 13,038 | 13,068 | +0% | 1 | 1 | 0% | 2,171 | 2,485 | +14% | 0 | 0 | — |
case-19 | pass→pass | 6,415 | 1,557 | -76% | 1 | 1 | 0% | 1,113 | 658 | -41% | 0 | 0 | — |
case-20 | pass→pass | 2,217 | 2,740 | +24% | 1 | 1 | 0% | 363 | 818 | +125% | 0 | 0 | — |
case-21 | pass→pass | 2,429 | 2,033 | -16% | 1 | 1 | 0% | 388 | 708 | +82% | 0 | 0 | — |
case-22 | pass→pass | 2,157 | 2,038 | -6% | 1 | 1 | 0% | 386 | 685 | +77% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +9 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.