SEO Audit
82
Overall score

https://abhirachnadental.com/dentist-in-south-extension-part-1-delhi/

Audit #1061 · started 1 month ago · 82.05 s · triggered by site_audit
✓ 57 pass ! 26 warn ✗ 3 fail · 101 total checks
meta
96
headings
90
schema
100
technical
91
sitemap
100
ssl security
83
page speed
66
links
90
images
58
content
66
mobile
100
hreflang
—
geo
50
spam security
88
domain security
60
⚠️
29 issues need attention
Open the for prioritised, copy-paste-ready fixes with location and AI-personalised suggestions.

Fix progress

0 of 29 issues fixed · Est. time left: 18h 40m
0%
Severity: | Showing / 29 | PDF CSV
High page speed Fail priority 78/100 −70 pts Easy · ~15m

Cumulative Layout Shift

Poor: 0.3.

Generic best practice

Cumulative Layout Shift should be under 0.1. Set explicit width/height on images, reserve space for embeds and ads, and avoid late-loading fonts that re-flow text.

Code fix
Before:
<img src="photo.jpg">
After:
<img src="photo.jpg" width="800" height="600" alt="...">
AI suggestion (context-aware)
Generating personalised suggestion…
High spam security Warning priority 74/100 −60 pts Hard · ~120m

No injected/obfuscated code

Potential hacked/injected-code signals: hidden offsite iframe.

Generic best practice

Potential hacked-site/injected-code signals found. Scan source for obfuscated scripts and hidden iframes, check for unexpected admin users and recently modified files, restore from a clean backup, update CMS/plugins, then request a review in Search Console.

Code fix
Before:
<script>eval(atob("...base64..."))</script>
After:
<!-- remove injected script; patch the vulnerability that allowed it -->
AI suggestion (context-aware)
Generating personalised suggestion…
High technical Fail priority 72/100 −80 pts Medium · ~45m

Response time acceptable

Fetched in 2826 ms — too slow.

Generic best practice

Server is slow. Investigate: enable a CDN, add page caching, optimise database queries, upgrade hosting. TTFB > 800ms hurts every Core Web Vital.

AI suggestion (context-aware)
Generating personalised suggestion…
High images Fail priority 64/100 −70 pts Easy · ~15m

Images have alt text

1 of 9 images missing alt attribute.

Location in HTML
Line 940 · #okapi-wasb-icon
   939  <a href="https://wa.me/919308056390?text=Hi" id="okapi-wasb-button" target="_blank">
>  940  	<img id="okapi-wasb-icon" src="https://abhirachnadental.com/wp-content/plugins/wa-sticky-button/assets/default.png">
   941  </a>		<script type="application/javascript">
Generic best practice

Every <img> needs an alt attribute. Alt text helps screen readers, image search ranking, and shows when the image fails to load. Use alt="" only for purely decorative images.

Code fix
Before:
<img src="photo.jpg">
After:
<img src="photo.jpg" alt="Descriptive text describing the image content">
AI suggestion (context-aware)
Generating personalised suggestion…
Medium page speed Warning priority 73/100 −40 pts Medium · ~45m

Largest Contentful Paint

Needs improvement: 3.91s.

Generic best practice

Largest Contentful Paint should load within 2.5s. Optimise the largest above-the-fold element: compress hero images, preload critical assets, and eliminate render-blocking resources.

Code fix
Before:
<img src="hero.jpg">
After:
<link rel="preload" as="image" href="hero.webp">
<img src="hero.webp" fetchpriority="high" width="1200" height="600" alt="...">
AI suggestion (context-aware)
Generating personalised suggestion…
Medium page speed Warning priority 64/100 −40 pts Medium · ~45m

PageSpeed performance score

Score 60/100 — improve.

Generic best practice

Open Lighthouse in Chrome DevTools or PageSpeed Insights — the report lists specific opportunities ranked by impact.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium page speed Warning priority 64/100 −40 pts Medium · ~45m

First Contentful Paint

Needs improvement: 3.31s.

Generic best practice

First Contentful Paint should be under 1.8s. Inline critical CSS, defer non-critical CSS/JS, and use a CDN.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium images Warning priority 63/100 −40 pts Easy · ~15m

Images have dimensions

8/9 images have explicit dimensions.

Location in HTML
Line 206 · #logo
   205  				<a href="https://abhirachnadental.com/">
>  206  				<img src="https://abhirachnadental.com/wp-content/uploads/2024/10/abhirachna-logo-big-01.png" width="584" height="125" alt="Abhirachna Dental &amp; Aesthetics" id="logo" data-height-percentage="62" />
   207  				</a>
Generic best practice

Set explicit width/height on every <img> to prevent Cumulative Layout Shift. Browser reserves the box before the image loads.

Code fix
Before:
<img src="photo.jpg" alt="...">
After:
<img src="photo.jpg" width="800" height="600" alt="...">
AI suggestion (context-aware)
Generating personalised suggestion…
Medium content Warning priority 62/100 −50 pts Medium · ~45m

E-E-A-T: Expertise

Moderate:

Generic best practice

Show expertise: author bio with credentials, citations to reputable sources, in-depth coverage of the topic, technical accuracy.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium content Warning priority 62/100 −50 pts Medium · ~45m

E-E-A-T: Trustworthiness

Moderate:

Generic best practice

Add trust signals: clear contact info, privacy policy, terms of service, customer reviews, security badges, real photos of team/location.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium meta Warning priority 59/100 −50 pts Trivial · ~5m

Meta description length

Description is 117 characters — too short.

Location in HTML
Line 21 · html > head > meta:nth-of-type(5)
    20  	<title>Dentist in South Extension Part - 1, Delhi</title>
>   21  	<meta name="description" content="Abhirachna Dental and Aesthetic Clinic a trusted name when searching for a Dentist in South Extension Part - 1, Delhi" />
    22  	<link rel="canonical" href="https://abhirachnadental.com/dentist-in-south-extension-part-1-delhi/" />
Generic best practice

Meta description is outside the 120-160 character range. Too short = thin content; too long = truncated by Google.

Code fix
Before:
<meta name="description" content="117 chars">
After:
<meta name="description" content="Rewritten description, 120-160 chars, with the primary keyword and a value proposition.">
AI suggestion (context-aware)
Generating personalised suggestion…
Medium page speed Warning priority 59/100 −50 pts Easy · ~15m

Compression enabled

No gzip/brotli content-encoding header.

Generic best practice

Enable gzip or Brotli compression on your server. Typically cuts text payload by 70-80% — easy LCP win.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium images Warning priority 59/100 −60 pts Medium · ~45m

Modern image formats

No images use webp/avif.

Generic best practice

Convert images to WebP or AVIF — typically 25-50% smaller than JPEG/PNG with no visible quality loss. Use <picture> for fallback.

Code fix
Before:
<img src="photo.jpg">
After:
<picture>
  <source type="image/avif" srcset="photo.avif">
  <source type="image/webp" srcset="photo.webp">
  <img src="photo.jpg" alt="...">
</picture>
AI suggestion (context-aware)
Generating personalised suggestion…
Medium content Warning priority 58/100 −50 pts Hard · ~120m

E-E-A-T: Experience

Moderate:

Generic best practice

Demonstrate first-hand experience: original photos, personal anecdotes, before/after results, screenshots from the actual product/service.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium content Warning priority 58/100 −50 pts Hard · ~120m

E-E-A-T: Authoritativeness

Moderate:

Generic best practice

Build authoritativeness: links from respected sites in your niche, mentions in industry publications, About page detailing your expertise.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium ssl security Warning priority 54/100 −40 pts Easy · ~15m

HSTS header present

Missing strict-transport-security header.

Generic best practice

Add Strict-Transport-Security header so browsers refuse HTTP for your domain after the first visit. Bumps SSL Labs grade to A+.

Code fix
Strict-Transport-Security: max-age=31536000; includeSubDomains
AI suggestion (context-aware)
Generating personalised suggestion…
Medium links Warning priority 53/100 −50 pts Easy · ~15m

External links safe

5 external _blank links missing rel=noopener.

Generic best practice

Add rel="noopener noreferrer" to target="_blank" links. Without noopener, the linked page can manipulate your window object — security + perf risk.

Code fix
Before:
<a href="https://other.com" target="_blank">External</a>
After:
<a href="https://other.com" target="_blank" rel="noopener noreferrer">External</a>
AI suggestion (context-aware)
Generating personalised suggestion…
Medium domain security Warning priority 53/100 −50 pts Easy · ~15m

SPF record present

No SPF (v=spf1) TXT record found for abhirachnadental.com.

Generic best practice

Publish an SPF record so receivers can verify which servers may send mail for your domain — reduces spoofing and improves deliverability. List only your real senders and end with ~all (soft-fail) or -all (hard-fail).

Code fix
Before:
# no SPF TXT record
After:
example.com.  IN  TXT  "v=spf1 include:_spf.google.com ~all"
AI suggestion (context-aware)
Generating personalised suggestion…
Medium domain security Warning priority 53/100 −50 pts Easy · ~15m

DMARC record present

No DMARC record found at _dmarc.abhirachnadental.com.

Generic best practice

Publish a DMARC record to tell receivers what to do with mail that fails SPF/DKIM, and where to send reports. Start at p=none to monitor, then tighten to quarantine/reject.

Code fix
Before:
# no _dmarc TXT record
After:
_dmarc.example.com.  IN  TXT  "v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com"
AI suggestion (context-aware)
Generating personalised suggestion…
Medium geo Warning priority 48/100 −50 pts Medium · ~45m

Content provides clear answers

Moderate (5/10).

Generic best practice

Lead each section with a direct, citable answer to the question users would ask. AI engines (ChatGPT, Perplexity) cite the clearest, most specific sentences.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium geo Warning priority 48/100 −50 pts Medium · ~45m

High factual density

Moderate (5/10).

Generic best practice

Add concrete facts — numbers, dates, percentages, named sources. Vague prose doesn't get cited; specific data does.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium geo Warning priority 48/100 −50 pts Medium · ~45m

Structured for AI extraction

Moderate (5/10).

Generic best practice

Add bulleted lists, sub-headings, definitions, and TL;DR sections. AI engines prefer clearly structured content for extraction.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium geo Warning priority 48/100 −50 pts Medium · ~45m

Cites authoritative sources

Moderate (5/10).

Generic best practice

Cite authoritative external sources (links, references). Pages that cite reputable sources are themselves cited more often.

AI suggestion (context-aware)
Generating personalised suggestion…
Medium headings Warning priority 45/100 −50 pts Easy · ~15m

Heading hierarchy

Heading levels skipped 2 times.

Generic best practice

Headings should descend logically: H1 → H2 → H3, no jumps. Skipping levels (H1 → H3) breaks accessibility tools and confuses crawlers.

Code fix
Before:
<h1>Page Title</h1>
<h3>Section</h3>  <!-- skipped H2 -->
After:
<h1>Page Title</h1>
<h2>Section</h2>
<h3>Subsection</h3>
AI suggestion (context-aware)
Generating personalised suggestion…
Medium domain security Warning priority 44/100 −100 pts Easy · ~15m

Security headers configured

Most security headers are missing: strict-transport-security, content-security-policy, x-content-type-options, x-frame-options, referrer-policy, permissions-policy.

Generic best practice

Add the recommended HTTP security headers at the server/CDN level to harden the site.

Code fix
Before:
# missing headers
After:
# nginx
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
add_header Referrer-Policy "strict-origin-when-cross-origin";
add_header Permissions-Policy "geolocation=(), microphone=()";
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
AI suggestion (context-aware)
Generating personalised suggestion…
Low images Warning priority 44/100 −40 pts Easy · ~15m

Below-fold images lazy

Only 1 of 9 images use loading="lazy".

Generic best practice

Add loading="lazy" to images below the fold. Saves bandwidth, speeds up initial page load.

Code fix
Before:
<img src="below-fold.jpg">
After:
<img src="below-fold.jpg" loading="lazy" width="..." height="..." alt="...">
AI suggestion (context-aware)
Generating personalised suggestion…
Low content Warning priority 43/100 −40 pts Medium · ~45m

Readable prose

Flesch reading ease 34.4 — fairly difficult.

Generic best practice

Simplify your prose. Shorter sentences (15-20 words), smaller words (1-2 syllables), more paragraph breaks. Target 8th-grade reading level for a general audience.

AI suggestion (context-aware)
Generating personalised suggestion…
Low ssl security Warning priority 39/100 −40 pts Trivial · ~5m

X-Content-Type-Options

Missing x-content-type-options header.

Generic best practice

Add X-Content-Type-Options: nosniff so browsers honour the Content-Type and don't MIME-sniff for malicious files.

Code fix
X-Content-Type-Options: nosniff
AI suggestion (context-aware)
Generating personalised suggestion…
Low ssl security Warning priority 32/100 −40 pts Medium · ~45m

CSP header present

Missing content-security-policy header.

Generic best practice

Add a Content-Security-Policy header to block XSS by whitelisting allowed script/style sources.

Code fix
Content-Security-Policy: default-src 'self'; script-src 'self' 'unsafe-inline'
AI suggestion (context-aware)
Generating personalised suggestion…
Pass Title tag present
title_present
Title tag found.
Actual: Dentist in South Extension Part - 1, Delhi
Pass Title length
title_length
Title length 42 chars — within recommended range.
Actual: 42 chars
Pass Title pixel width
title_pixel_width
Title is ~318px wide — fits within the SERP display limit.
Actual: ~318px
Pass Title is descriptive
title_unique_words
8 words — descriptive enough.
Pass Meta description present
meta_description_present
Meta description present.
Actual: Abhirachna Dental and Aesthetic Clinic a trusted name when searching for a Denti...
Warning Meta description length
meta_description_length
Description is 117 characters — too short.
Fix: Aim for 120–160 characters.
Actual: 117 chars
Expected: 120–160 chars
Pass OpenGraph title present
og_title_present
Og title present present.
Actual: Dentist in South Extension Part - 1, Delhi
Pass OpenGraph description present
og_description_present
Og description present present.
Actual: Abhirachna Dental and Aesthetic Clinic a trusted name when searching for a Denti...
Pass OpenGraph image present
og_image_present
Og image present present.
Actual: https://abhirachnadental.com/wp-content/uploads/2025/04/AF1QipM6MlwOTd_8zE4VS63R...
Pass Twitter card present
twitter_card_present
Twitter card present present.
Actual: summary_large_image
Pass Viewport meta tag present
meta_viewport_present
Viewport meta tag present.
Actual: width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0
Pass Charset meta tag present
meta_charset_present
Charset declared.
Pass H1 tag present
h1_present
Found 1 H1.
Actual: 1 H1
Pass Single H1 tag
h1_count
Exactly one H1.
Actual: 1
Pass H1 has reasonable length
h1_length
H1 length 100 chars.
Actual: 100 chars
Pass Sufficient H2 tags
h2_count
7 H2 tags — good content structure.
Actual: 7
Warning Heading hierarchy
heading_hierarchy
Heading levels skipped 2 times.
Fix: Maintain logical heading order (h1 → h2 → h3, no jumps).
Actual: 2 skips
Pass JSON-LD structured data present
schema_json_ld_present
1 JSON-LD blocks present.
Actual: 1 scripts
Pass JSON-LD is valid JSON
schema_valid_json
All JSON-LD blocks parse cleanly.
Pass Recommended schema types used
schema_recommended_types
Recommended schema types found.
Actual: WebSite, BreadcrumbList, Article
Pass No deprecated schema types
schema_no_deprecated
No deprecated schema types.
Pass No restricted schema types
schema_no_restricted
No restricted schema types.
Pass Schema has required properties
schema_required_properties
Recognised schema types include their required properties.
Info Microdata or RDFa present
schema_microdata_present
No microdata. JSON-LD is preferred — this is informational only.
Actual: 0
Pass Canonical URL present
canonical_present
Canonical link found.
Actual: https://abhirachnadental.com/dentist-in-south-extension-part-1-delhi/
Pass Canonical self-references
canonical_self_referencing
Canonical points to this page.
Actual: https://abhirachnadental.com/dentist-in-south-extension-part-1-delhi/
Pass Page is indexable
robots_meta_indexable
No noindex directive (meta robots or X-Robots-Tag).
Actual: index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1
Pass Minimal redirect chain
redirect_chain_minimal
URL resolves directly with no redirects.
Actual: 0 hops
Pass HTML lang attribute
lang_attribute_present
<html lang="en"> declared.
Actual: en
Pass HTML5 doctype
doctype_html5
HTML5 doctype declared.
Pass Favicon present
favicon_present
Favicon declared.
Pass HTTP status 2xx
http_status_ok
Server returned 200.
Actual: 200
Fail Response time acceptable
response_time_ok
Fetched in 2826 ms — too slow.
Fix: Investigate server performance, caching, CDN.
Actual: 2826 ms
Expected: < 800 ms
Pass robots.txt accessible
robots_txt_found
robots.txt found.
Pass robots.txt does not block
robots_txt_no_block
robots.txt does not block this page.
Pass sitemap.xml accessible
sitemap_xml_found
Sitemap found at https://abhirachnadental.com/wp-sitemap.xml (1020 URLs).
Actual: https://abhirachnadental.com/wp-sitemap.xml
Pass Sitemap lists URLs
sitemap_url_count
Sitemap lists 1020 URLs.
Actual: 1020 URLs
Pass Page is listed in sitemap
sitemap_contains_url
This page is listed in the sitemap.
Pass Sitemap referenced
sitemap_referenced
Sitemap referenced from robots.txt.
Pass Page served over HTTPS
ssl_https
Served over HTTPS.
Actual: https
Pass TLS handshake succeeds
ssl_valid
TLS handshake succeeded.
Actual: abhirachnadental.com
Pass HTTP redirects to HTTPS
http_redirects_to_https
HTTP requests redirect to HTTPS.
Warning HSTS header present
hsts_header_present
Missing strict-transport-security header.
Fix: Add strict-transport-security for hardened security posture.
Actual: missing
Warning CSP header present
csp_header_present
Missing content-security-policy header.
Fix: Add content-security-policy for hardened security posture.
Actual: missing
Warning X-Content-Type-Options
x_content_type_options
Missing x-content-type-options header.
Fix: Add x-content-type-options for hardened security posture.
Actual: missing
Pass No mixed content
no_mixed_content
All subresources load over HTTPS.
Warning PageSpeed performance score
pagespeed_score
Score 60/100 — improve.
Fix: Investigate Lighthouse opportunities.
Actual: 60/100
Expected: ≥ 80
Warning Largest Contentful Paint
lcp_within_threshold
Needs improvement: 3.91s.
Fix: Aim for ≤ 2.5s.
Actual: 3.91s
Expected: ≤ 2.5s
Fail Cumulative Layout Shift
cls_within_threshold
Poor: 0.3.
Fix: Improve to ≤ 0.1.
Actual: 0.3
Expected: ≤ 0.1
Warning First Contentful Paint
fcp_within_threshold
Needs improvement: 3.31s.
Fix: Aim for ≤ 1.8s.
Actual: 3.31s
Expected: ≤ 1.8s
Pass Time To First Byte
ttfb_within_threshold
Within good threshold (0.18s).
Actual: 0.18s
Info Interaction to Next Paint
inp_within_threshold
No CrUX field data for INP (page has insufficient real-world traffic).
Actual: no field data
Info Largest Contentful Paint (field)
crux_lcp_field
No CrUX field data available for this page.
Actual: no field data
Info Cumulative Layout Shift (field)
crux_cls_field
No CrUX field data available for this page.
Actual: no field data
Pass Few render-blocking resources
render_blocking_resources
No render-blocking resources detected.
Warning Compression enabled
gzip_or_brotli
No gzip/brotli content-encoding header.
Fix: Enable gzip or Brotli on your server.
Pass Healthy internal link count
internal_link_count
57 unique internal links.
Actual: 57
Pass No broken internal links
no_broken_internal_links
All 10 sampled internal links return success.
Actual: 0/10
Pass No broken external links
no_broken_external_links
All 5 sampled external links resolve.
Actual: 0/5
Warning External links safe
external_links_safe
5 external _blank links missing rel=noopener.
Fix: Add rel="noopener noreferrer" to target="_blank" links for security.
Actual: 5 unsafe
Pass Descriptive anchor text
descriptive_anchor_text
Anchor texts are descriptive.
Actual: 12/90 generic
Fail Images have alt text
images_alt_present
1 of 9 images missing alt attribute.
Fix: Add alt text describing each image (alt="" for purely decorative).
Actual: 1/9 missing
Expected: 0
Warning Below-fold images lazy
images_lazy_loaded
Only 1 of 9 images use loading="lazy".
Fix: Add loading="lazy" to images below the fold.
Actual: 1 lazy
Warning Modern image formats
images_modern_formats
No images use webp/avif.
Fix: Adopt WebP/AVIF — typically 25-50% smaller than JPEG/PNG.
Warning Images have dimensions
images_have_dimensions
8/9 images have explicit dimensions.
Fix: Add width/height to all <img> tags to prevent CLS.
Pass Images are reasonably sized
images_reasonable_size
All 9 sampled images are under 200 KB.
Actual: 0/9 oversized
Pass Sufficient word count
word_count
1120 words — substantive content.
Actual: 1120 words
Pass Content present without JavaScript
js_rendered_content
Content is present in the server-rendered HTML.
Warning Readable prose
readability
Flesch reading ease 34.4 — fairly difficult.
Fix: Shorten sentences and use simpler words.
Actual: 34.4
Expected: ≥ 60
Warning E-E-A-T: Experience
eeat_experience
Moderate:
Fix: Strengthen Experience signals on this page.
Actual: 5/10
Expected: ≥ 7
Warning E-E-A-T: Expertise
eeat_expertise
Moderate:
Fix: Strengthen Expertise signals on this page.
Actual: 5/10
Expected: ≥ 7
Warning E-E-A-T: Authoritativeness
eeat_authority
Moderate:
Fix: Strengthen Authoritativeness signals on this page.
Actual: 5/10
Expected: ≥ 7
Warning E-E-A-T: Trustworthiness
eeat_trust
Moderate:
Fix: Strengthen Trustworthiness signals on this page.
Actual: 5/10
Expected: ≥ 7
Info Target keyword alignment
keyword_alignment
No target keyword supplied — skipped. Provide one when starting an audit to score on-page keyword alignment.
Actual: not set
Pass Viewport set for mobile
mobile_viewport
Responsive viewport configured.
Actual: width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0
Pass Tap targets reasonable
mobile_tap_targets
No obvious tap-target sizing problems.
Info Legible font sizes
mobile_font_size
No inline body font-size — relying on stylesheet defaults.
Actual: unknown
Pass No Flash/legacy plugins
mobile_no_flash
No legacy plugin elements.
Info hreflang tags present (if i18n)
hreflang_present
No hreflang tags. OK for monolingual sites.
Actual: 0
Skipped hreflang codes valid
hreflang_valid_codes
No hreflang to evaluate.
Skipped hreflang self-reference
hreflang_self_ref
No hreflang to evaluate.
Skipped hreflang x-default present
hreflang_x_default
No hreflang to evaluate.
Warning Content provides clear answers
geo_clear_answers
Moderate (5/10).
Fix: Improve to lift this dimension.
Actual: 5/10
Expected: ≥ 7
Warning High factual density
geo_factual_density
Moderate (5/10).
Fix: Improve to lift this dimension.
Actual: 5/10
Expected: ≥ 7
Warning Structured for AI extraction
geo_structured_for_ai
Moderate (5/10).
Fix: Improve to lift this dimension.
Actual: 5/10
Expected: ≥ 7
Warning Cites authoritative sources
geo_authoritative_sources
Moderate (5/10).
Fix: Improve to lift this dimension.
Actual: 5/10
Expected: ≥ 7
Pass No hidden text or links
spam_no_hidden_content
No obvious hidden text or link spam.
Pass No sneaky redirects
spam_no_sneaky_redirects
No sneaky meta or JavaScript redirects.
Pass Clean outbound links
spam_clean_outbound_links
No spammy outbound links among 6 external links.
Actual: 0 spam / 6 external
Pass No cloaking
spam_no_cloaking
Googlebot and visitors are served comparable content (0% difference).
Actual: 0% difference
Warning No injected/obfuscated code
spam_no_malware_signals
Potential hacked/injected-code signals: hidden offsite iframe.
Fix: Investigate for a site compromise. Scan the source, check for unexpected admin users, and review recently modified files.
Actual: hidden offsite iframe
Expected: none
Info Google Safe Browsing
safe_browsing_clean
Not checked — set GOOGLE_SAFE_BROWSING_API_KEY to flag malware/phishing.
Actual: not configured
Warning Security headers configured
security_headers_posture
Most security headers are missing: strict-transport-security, content-security-policy, x-content-type-options, x-frame-options, referrer-policy, permissions-policy.
Fix: Configure security headers at the server/CDN level for a stronger posture.
Actual: 0/6 present
Expected: 6/6
Warning SPF record present
email_spf
No SPF (v=spf1) TXT record found for abhirachnadental.com.
Fix: Publish an SPF record to authorise legitimate senders and reduce spoofing of your domain.
Actual: missing
Expected: present
Warning DMARC record present
email_dmarc
No DMARC record found at _dmarc.abhirachnadental.com.
Fix: Publish a DMARC record (start with p=none for monitoring, then enforce) to protect against spoofing.
Actual: missing
Expected: present
Info MX records present
email_mx
No MX records — this domain does not receive email (fine for a website-only domain).
Actual: 0
Info DKIM configured
email_dkim
No DKIM key found for common selectors. DKIM uses a private selector that cannot be fully enumerated externally — verify with your mail provider.
Actual: unknown
Info DNS resolves / hosting
dns_hosting_info
IP 107.180.118.222 — 222.118.180.107.host.secureserver.net; NS: ns05.domaincontrol.com, ns06.domaincontrol.com
Actual: 107.180.118.222
Pass Domain registration
domain_registration
Registrar: GoDaddy.com, LLC; registered 7.8 yr ago; expires in 70 day(s).
Actual: GoDaddy.com, LLC
Pass Not on spam blacklists
domain_not_blacklisted
Not listed on the checked spam blacklists (2 zones).
Actual: clean
Info Clean web reputation
web_reputation
Deep reputation scoring not run (set VIRUSTOTAL_API_KEY). Safe Browsing & blacklist checks cover the basics.
Actual: not configured