| HIGH ADA |
Some form fields have no label or instructions
Fields on the contact form have a placeholder but no label. Screen readers may not announce what each field is for, and the hint disappears once someone starts typing.
WHAT YOU WILL SEE IF YOU GO AND LOOKEXPECT TO SEE THE LABEL AND STILL HAVE A REAL FAILURE. A word sitting above the box satisfies your eyes and not the requirement. Inspect the field and look for <label for> matching its id, or aria-label on the field. Text in a plain <p> or <div> above the box is invisible to assistive technology no matter how clearly it reads on screen.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
<input type="text" placeholder="Your name"> Fix
Give each field a visible label tied to it, and keep the placeholder only as an extra hint. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com/contact
|
| HIGH ADA |
Some buttons and links have no readable name for screen readers
Some icon links have no text a screen reader can announce, so a blind visitor hears only "link".
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
<a href="/contact" class="icon-btn"><svg>...</svg></a> Fix
Add an aria-label that says where the link goes. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URLs (2 affected pages): www.example.comwww.example.com/services
|
| HIGH LOCAL |
No LocalBusiness schema found
The site does not tell search engines its name, address, phone and hours in the structured form they read most reliably.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
No JSON-LD with @type LocalBusiness across 14 page(s) Fix
Add business details in JSON-LD to the home page with name, address, phone, hours and service area. How to verify Some sites add this data with JavaScript after the page loads. Confirm on the LIVE site: F12 → Elements → search the fully-loaded DOM for the schema type before treating it as missing.
Reference URL: www.example.com
|
| HIGH SEC |
Browser protection headers are missing
The site does not send the settings that tell browsers to block common attacks.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
No Content-Security-Policy, no X-Frame-Options. Fix
Have your web host add a Content-Security-Policy and X-Frame-Options header. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|
| MEDIUM MOBILE |
The phone number cannot be tapped
The phone number is shown as plain text, so someone on a phone has to copy it to call.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
<span class="phone">(000) 000-0000</span> Fix
Wrap every phone number in a tel: link. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URLs (2 affected pages): www.example.comwww.example.com/contact
|
| MEDIUM CONTENT |
Many pages share the same title
Most pages share one title, so they blur together in search results.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
<title>Sample Business</title> Fix
Give each page its own title. How to verify Open each affected page, F12 → Elements, and compare the <title> in <head>; if two pages share the same title it still fails.
Reference URLs (2 affected pages): www.example.com/serviceswww.example.com/about
|
| MEDIUM PERF |
Scripts hold up the first paint
Six scripts must load before the page can show anything.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
<script src="/js/slider.js"></script> Fix
Add defer to these scripts, or move them to the end of the page. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|
| MEDIUM ADA |
No "skip to content" link for keyboard users
Keyboard users have to tab through the whole menu on every page before reaching the content.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
No link to the main content before the menu. Fix
Add a "Skip to content" link as the first item on each page. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|
| MEDIUM ADA |
The keyboard focus outline is removed
The stylesheet removes the outline that shows keyboard users where they are on the page.
WHAT YOU WILL SEE IF YOU GO AND LOOKFocus outlines are easy to miss because a mouse never shows them. Press Tab and watch for a visible ring on every stop; a control that lights up on hover but not on Tab still fails.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
a:focus { outline: none; }Fix
Remove the rule, or replace it with a clear focus style of your own. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|
| MEDIUM SEO |
No sharing preview is set
When someone shares your site, no title or picture is set for the preview.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
No og:title on the home page. Fix
Add og:title, og:description and og:image to each main page. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|
| MEDIUM LOCAL |
Hours are not published in a form search can read
Your hours appear as text only, so search engines and AI tools may not show them.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
Mon-Fri 8am-5pm Fix
Add openingHoursSpecification to your business details. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com/contact
|
| MEDIUM LOCAL |
No one-tap directions
Your address has no link to a map, so someone on a phone has to copy it to get directions.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
The address is plain text. Fix
Link the address to your Google Maps listing. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com/contact
|
| MEDIUM CONV |
No analytics found
You cannot see where inquiries come from.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
No analytics found. Fix
Install analytics and count form sends and phone taps as conversions. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|
| MEDIUM SEC |
Browsers are not told to always use the secure site
Return visitors are not forced onto the secure version of your site.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
No Strict-Transport-Security. Fix
Add a Strict-Transport-Security header once every page works on HTTPS. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|
| MEDIUM SEC |
No DMARC record
Nothing tells mail servers what to do with email that fakes your domain.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
No DMARC record found. Fix
Publish a DMARC record, starting with p=none. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|
| MEDIUM TECH |
The home page has no search description
Google picks its own snippet, which may not say what you do or where.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
<head> has no description Fix
Write one sentence of about 150 characters. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|
| LOW DESIGN |
Contact details need a scroll on a phone
On a phone, a visitor has to scroll to find your number.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
First appears 980 px down. Fix
Put a tap-to-call button in the header on phones. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|
| LOW CONTENT |
No questions-and-answers section
No page answers common questions in question-and-answer form.
● MEASURED · WebReady360 deterministic detector
In-process HTML pattern match on the crawled DOM. Same HTML → same finding.
Broken code / evidence
No FAQ found. Fix
Add a short FAQ to your main service pages. How to verify Open a listed URL in Chrome and confirm the element or absence named above.
Reference URL: www.example.com
|