Mobile 375 × 812

Desktop 1440 × 900

Score: 80 / 100
Based on 8 categories, 0 sections
Fast site — your users get a smooth experience.
Good foundation, but a few gaps could be exploited.
Several issues make your site difficult for assistive technology users.
Well-optimized for search — your content is discoverable.
Solid infrastructure — fast server responses across the board.
Mostly compliant — a few items need attention.
Good content signals with minor gaps.
Lean and efficient — low environmental impact per visit.
The overall score is a weighted average of individual category scores. Categories with more impact on user experience and security carry more weight.
Weights reflect general web best practices. Individual needs may differ.
Content-Security-Policy header is missing
Security gaps expose your site and users to attacks, eroding trust.
No Content-Security-Policy header found
Security gaps expose your site and users to attacks, eroding trust.
10 image(s) missing alt attribute
Accessibility issues exclude users with disabilities — up to 15% of your potential audience.
10 image-in-link without alt text
Accessibility issues exclude users with disabilities — up to 15% of your potential audience.
2 button(s) with no accessible text
Accessibility issues exclude users with disabilities — up to 15% of your potential audience.
High impact, low effort — start here.
High impact, requires investment.
Small gains, minimal effort.
Nothing in this quadrant — good news.
Low impact, high effort — do last.
Nothing in this quadrant — good news.
[](https://beavercheck.com/results/ec163b57-46f4-4879-9fbd-7af87758a5f4)<a href="https://beavercheck.com/results/ec163b57-46f4-4879-9fbd-7af87758a5f4"><img src="https://beavercheck.com/badge?url=https%3A%2F%2Flichess.org" alt="BeaverCheck Score"></a>https://beavercheck.com/badge?url=https%3A%2F%2Flichess.orgThis badge auto-updates with your latest scan result.
Your site performs reasonably well, but a few targeted fixes could meaningfully improve results. Addressing the critical issues below would have the most immediate impact on your user trust.
5 barrier(s) likely increasing bounce by ~22%.
Page takes 4.9s to load
+12% bounceUsers abandon at ~3s — you're 2.4s over the 2.5s threshold
Fix: Optimize render-blocking resources, preload the hero image, and compress images
No Content-Security-Policy header
+1% bounceHigher XSS blast radius — one compromised script can exfiltrate the checkout form
Fix: Ship a reporting-only CSP first, then enforce once violations are clean
No structured data
+2% bounceNo rich-result eligibility in Google — lower SERP CTR vs competitors with stars and prices
Fix: Add JSON-LD for your page type (Product, Article, FAQPage, LocalBusiness, …)
No skip-to-content link
+1% bounceKeyboard and screen-reader users must tab through the entire header on every page
Fix: Add a visible-on-focus <a href="#main">Skip to content</a> as the first focusable element
1 broken link(s) on the page
+2% bounceClicks land on 404s — trust drops and the session often ends
Fix: Fix or remove the broken destinations surfaced on the Content tab
Preliminary CRO audit — each barrier links to the tab with detailed analysis.
£413 investment → £2,875/month returns + GBP 18,050,000 risk avoided
£413
6h · 5 findings
£2,875 /mo
~£34,495 / year
GBP 18,050,000
if kept compliant
£75 — in quick wins — start here for the fastest payback
Figures combine localized regulatory fine ceilings, search/conversion value priced against local CPC, and bandwidth waste estimates. Results depend on implementation quality and audience composition. Not legal or financial advice.
5.5 developer hours at £75/hr
Based on United Kingdom rates (£75/hr)
Start here for the best return on investment
£1,504,167 / month at risk
~£18,050,001 / year if left unfixed
£18,050,000
+5 more
£0.11 /mo
1754.8 MB/mo × 0.063 GBP/GB
Compliance figures represent the statutory maximum fine for the most severe triggered category, capped per regulation — not the sum of per-finding penalties. Based on published regulatory fine ranges. This is not legal advice.
Unique monthly visitors from your analytics
Purchases, signups, or key actions
Optional — for revenue estimation
more engaged visitors from reduced bounce
Fix 5 critical issues to capture this value
Based on Google/Deloitte research ("Milliseconds Make Millions") showing a ~7% bounce rate increase per additional second of LCP above the 2.5s "Good" threshold.
Your site's LCP: → estimated after fixes.
These are estimates based on industry research — actual results vary
Your data stays in your browser — nothing is sent to our servers
Thanks for your feedback!
We'll use a cached audit if available, or offer to scan.
Industry-standard audits powered by Google Lighthouse.
Key metrics that affect user experience.
First Contentful Paint First Contentful Paint — how long until the browser renders the first piece of content. Under 1.8s is good.
3.90 s
Largest Contentful Paint Largest Contentful Paint — how long until the largest visible element loads. Under 2.5s is good.
4.89 s
Total Blocking Time Total Blocking Time — total time the main thread was blocked, preventing user input. Under 200ms is good.
0 ms
Cumulative Layout Shift Cumulative Layout Shift — measures visual stability. How much the page layout shifts during loading. Under 0.1 is good.
0.000
Speed Index Speed Index — how quickly content is visually displayed during load. Under 3.4s is good.
3.90 s
Time to Interactive Time to Interactive — how long until the page is fully interactive and responds to user input. Under 3.8s is good.
4.90 s
Audit breakdown by category with detailed findings.
Remove large, duplicate JavaScript modules from bundles to reduce unnecessary bytes consumed by network activity.
Performance issues directly impact user engagement and conversion rates.
Polyfills and transforms enable older browsers to use new JavaScript features. However, many aren't necessary for modern browsers. Consider modifying your JavaScript build process to not transpile Baseline features, unless you know you must support older browsers. Learn why most sites can deploy ES6+ code without transpiling
Shipping ES5 transpiled code to modern browsers wastes bytes — every user with an evergreen browser pays for compatibility you don't need.
Most users today run browsers that natively support ES6+, async/await, optional chaining, and the rest of modern JavaScript. Transpiling to ES5 'just in case' adds 20-40% to your bundle for no benefit. Configure your build to target a modern browserslist, or ship a differential bundle pair (modern + legacy) with the module/nomodule pattern.
Source: Google web.dev / Lighthouse
3rd party code can significantly impact load performance. Reduce and defer loading of 3rd party code to prioritize your page's content.
Performance issues directly impact user engagement and conversion rates.
Avoid chaining critical requests by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.
Performance issues directly impact user engagement and conversion rates.
Requests are blocking the page's initial render, which may delay LCP. Deferring or inlining can move these network requests out of the critical path.
Performance issues directly impact user engagement and conversion rates.
| URL | Transfer Size | Duration |
|---|---|---|
| lichess1.org/assets/css/lobby.ad862683.css | 7.2 KiB | 805 ms |
| lichess1.org/assets/css/site.5a923922.css | 10.5 KiB | 964 ms |
| lichess1.org/assets/css/lib.theme.all.1689358c.css | 5.8 KiB | 805 ms |
Reducing the download time of images can improve the perceived load time of the page and LCP. Learn more about optimizing image size
Performance issues directly impact user engagement and conversion rates.
| URL | Resource Size | Est Savings | |
|---|---|---|---|
Woman looking through magnifying glass div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image | /display?fmt=webp&h=250&op=thumbnail&path=LaMJfBLx3j96.we... | 12.3 KiB | 9.2 KiB |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image | /display?fmt=webp&h=250&op=thumbnail&path=ZODj-wMq0_B8.we... | 9.0 KiB | 6.8 KiB |
These insights are also available in the Chrome DevTools Performance Panel - record a trace to view more detailed information.
Time to Interactive is the amount of time it takes for the page to become fully interactive. Learn more about the Time to Interactive metric.
Performance issues directly impact user engagement and conversion rates.
Many navigations are performed by going back to a previous page, or forwards again. The back/forward cache (bfcache) can speed up these return navigations. Learn more about the bfcache
Performance issues directly impact user engagement and conversion rates.
| Failure reason | Failure type |
|---|---|
| Pages with WebSocket cannot enter back/forward cache. | Pending browser support |
| Pages whose main resource has cache-control:no-store cannot enter back/forward cache. | Not actionable |
| Back/forward cache is disabled because WebSocket has been used. | Not actionable |
More information about the performance of your application. These numbers don't directly affect the Performance score.
These checks highlight opportunities to improve the accessibility of your web app. Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so manual testing is also encouraged.
When a button doesn't have an accessible name, screen readers announce it as "button", making it unusable for users who rely on screen readers. Learn how to make buttons more accessible.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
main.lobby > div.lobby__blog > div.carousel__controls > button.carousel__prev main.lobby > div.lobby__blog > div.carousel__controls > button.carousel__prev |
main.lobby > div.lobby__blog > div.carousel__controls > button.carousel__next main.lobby > div.lobby__blog > div.carousel__controls > button.carousel__next |
Informative elements should aim for short, descriptive alternate text. Decorative elements can be ignored with an empty alt attribute. Learn more about the `alt` attribute.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
These are opportunities to improve the semantics of the controls in your application. This may enhance the experience for users of assistive technology, like a screen reader.
Low-contrast text is difficult or impossible for many users to read. Learn how to provide sufficient color contrast.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
REGISTER header#top > div.site-buttons > div.signin-or-signup > a.button |
31 hours ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
45 hours ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
2 days ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
2 days ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
3 days ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
3 days ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
4 days ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
All updates » div.daily-feed__updates > div.daily-feed__update > div > a.daily-feed__update__day |
≤2000 Bullet tbody > tr > td > a.text |
Hourly SuperBlitz tbody > tr > td > a.text |
Hourly HyperBullet tbody > tr > td > a.text |
Hourly Blitz tbody > tr > td > a.text |
≤1500 Blitz tbody > tr > td > a.text |
Low-contrast text is difficult or impossible for many users to read. Link text that is discernible improves the experience for users with low vision. Learn how to make links distinguishable.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
Chess Digital League Final div.daily-feed__update > div > p > a |
UAE Chess Federation div.daily-feed__update > div > p > a |
Watch the interview on YouTube div.daily-feed__update > div > p > a |
Roman Dehtiarov div.daily-feed__update > div > p > a |
European Individual Chess Championship 2026 div.daily-feed__update > div > p > a |
@GlasnostPerestroika div.daily-feed__update > div > p > a |
2026 Spring Marathon div.daily-feed__update > div > p > a |
Dimitrios Makridis div.daily-feed__update > div > p > a |
next Marathon div.daily-feed__update > div > p > a |
Watch the interview on YouTube div.daily-feed__update > div > p > a |
YouTube div.daily-feed__update > div > p > a |
Twitch div.daily-feed__update > div > p > a |
These are opportunities to improve the legibility of your content.
Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. Learn more about touch targets.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
Streamers » main.lobby > div.lobby__side > section.lobby__streams > a.more |
These items highlight common accessibility best practices.
Screen readers have features to make navigating tables easier. Ensuring that `<td>` elements in a large table (3 or more cells in width and height) have an associated table header may improve the experience for screen reader users. Learn more about table headers.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
Philidor Defense Rapid
1h 57m 165
≤2000 Bullet
27m 130
Hourly Atomic
27m … div.lobby__tournaments-simuls > div.lobby__tournaments > div.lobby__box__content > table.tournaments |
These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on Core Web Vitals. Learn more about Google Search Essentials.
Search engines may use `href` attributes on links to crawl websites. Ensure that the `href` attribute of anchor elements links to an appropriate destination, so more pages of the site can be discovered. Learn how to make links crawlable
Performance issues directly impact user engagement and conversion rates.
| Uncrawlable Link |
|---|
header#top > div.site-buttons > div#clinput > a.link header#top > div.site-buttons > div#clinput > a.link |
To appear in search results, crawlers need access to your app.
Informative elements should aim for short, descriptive alternate text. Decorative elements can be ignored with an empty alt attribute. Learn more about the `alt` attribute.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
Format your HTML in a way that enables crawlers to better understand your app’s content.
Industry-standard audits powered by Google Lighthouse. — Desktop
Key metrics that affect user experience. — Desktop
First Contentful Paint First Contentful Paint — how long until the browser renders the first piece of content. Under 1.8s is good.
1.28 s
Largest Contentful Paint Largest Contentful Paint — how long until the largest visible element loads. Under 2.5s is good.
1.86 s
Total Blocking Time Total Blocking Time — total time the main thread was blocked, preventing user input. Under 200ms is good.
0 ms
Cumulative Layout Shift Cumulative Layout Shift — measures visual stability. How much the page layout shifts during loading. Under 0.1 is good.
0.000
Speed Index Speed Index — how quickly content is visually displayed during load. Under 3.4s is good.
1.28 s
Time to Interactive Time to Interactive — how long until the page is fully interactive and responds to user input. Under 3.8s is good.
1.86 s
Audit breakdown by category with detailed findings.
Remove large, duplicate JavaScript modules from bundles to reduce unnecessary bytes consumed by network activity.
Performance issues directly impact user engagement and conversion rates.
Polyfills and transforms enable older browsers to use new JavaScript features. However, many aren't necessary for modern browsers. Consider modifying your JavaScript build process to not transpile Baseline features, unless you know you must support older browsers. Learn why most sites can deploy ES6+ code without transpiling
Shipping ES5 transpiled code to modern browsers wastes bytes — every user with an evergreen browser pays for compatibility you don't need.
Most users today run browsers that natively support ES6+, async/await, optional chaining, and the rest of modern JavaScript. Transpiling to ES5 'just in case' adds 20-40% to your bundle for no benefit. Configure your build to target a modern browserslist, or ship a differential bundle pair (modern + legacy) with the module/nomodule pattern.
Source: Google web.dev / Lighthouse
3rd party code can significantly impact load performance. Reduce and defer loading of 3rd party code to prioritize your page's content.
Performance issues directly impact user engagement and conversion rates.
Avoid chaining critical requests by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.
Performance issues directly impact user engagement and conversion rates.
Requests are blocking the page's initial render, which may delay LCP. Deferring or inlining can move these network requests out of the critical path.
Performance issues directly impact user engagement and conversion rates.
| URL | Transfer Size | Duration |
|---|---|---|
| lichess1.org/assets/css/site.5a923922.css | 10.5 KiB | 285 ms |
| lichess1.org/assets/css/lobby.ad862683.css | 7.2 KiB | 285 ms |
| lichess1.org/assets/css/lib.theme.all.1689358c.css | 5.8 KiB | 285 ms |
Reducing the download time of images can improve the perceived load time of the page and LCP. Learn more about optimizing image size
Performance issues directly impact user engagement and conversion rates.
| URL | Resource Size | Est Savings | |
|---|---|---|---|
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image | /display?fmt=webp&h=250&op=thumbnail&path=ZODj-wMq0_B8.we... | 9.0 KiB | 6.6 KiB |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image | /display?fmt=webp&h=250&op=thumbnail&path=NPLNItREDsv-.we... | 7.0 KiB | 5.1 KiB |
These insights are also available in the Chrome DevTools Performance Panel - record a trace to view more detailed information.
Many navigations are performed by going back to a previous page, or forwards again. The back/forward cache (bfcache) can speed up these return navigations. Learn more about the bfcache
Performance issues directly impact user engagement and conversion rates.
| Failure reason | Failure type |
|---|---|
| Pages with WebSocket cannot enter back/forward cache. | Pending browser support |
| Pages whose main resource has cache-control:no-store cannot enter back/forward cache. | Not actionable |
| Back/forward cache is disabled because WebSocket has been used. | Not actionable |
More information about the performance of your application. These numbers don't directly affect the Performance score.
These checks highlight opportunities to improve the accessibility of your web app. Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so manual testing is also encouraged.
When a button doesn't have an accessible name, screen readers announce it as "button", making it unusable for users who rely on screen readers. Learn how to make buttons more accessible.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
main.lobby > div.lobby__blog > div.carousel__controls > button.carousel__prev main.lobby > div.lobby__blog > div.carousel__controls > button.carousel__prev |
main.lobby > div.lobby__blog > div.carousel__controls > button.carousel__next main.lobby > div.lobby__blog > div.carousel__controls > button.carousel__next |
Informative elements should aim for short, descriptive alternate text. Decorative elements can be ignored with an empty alt attribute. Learn more about the `alt` attribute.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
These are opportunities to improve the semantics of the controls in your application. This may enhance the experience for users of assistive technology, like a screen reader.
Low-contrast text is difficult or impossible for many users to read. Learn how to provide sufficient color contrast.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
REGISTER header#top > div.site-buttons > div.signin-or-signup > a.button |
31 hours ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
45 hours ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
2 days ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
2 days ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
3 days ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
3 days ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
4 days ago div.daily-feed__update > div > a.daily-feed__update__day > time.set |
All updates » div.daily-feed__updates > div.daily-feed__update > div > a.daily-feed__update__day |
≤2000 Bullet tbody > tr > td > a.text |
Hourly SuperBlitz tbody > tr > td > a.text |
Hourly HyperBullet tbody > tr > td > a.text |
Hourly Blitz tbody > tr > td > a.text |
≤1500 Blitz tbody > tr > td > a.text |
Low-contrast text is difficult or impossible for many users to read. Link text that is discernible improves the experience for users with low vision. Learn how to make links distinguishable.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
Chess Digital League Final div.daily-feed__update > div > p > a |
UAE Chess Federation div.daily-feed__update > div > p > a |
Watch the interview on YouTube div.daily-feed__update > div > p > a |
Roman Dehtiarov div.daily-feed__update > div > p > a |
European Individual Chess Championship 2026 div.daily-feed__update > div > p > a |
@GlasnostPerestroika div.daily-feed__update > div > p > a |
2026 Spring Marathon div.daily-feed__update > div > p > a |
Dimitrios Makridis div.daily-feed__update > div > p > a |
next Marathon div.daily-feed__update > div > p > a |
Watch the interview on YouTube div.daily-feed__update > div > p > a |
YouTube div.daily-feed__update > div > p > a |
Twitch div.daily-feed__update > div > p > a |
These are opportunities to improve the legibility of your content.
Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. Learn more about touch targets.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
51,812 players main.lobby > div.lobby__table > div.lobby__counters > a |
21,929 games in play main.lobby > div.lobby__table > div.lobby__counters > a |
These items highlight common accessibility best practices.
Screen readers have features to make navigating tables easier. Ensuring that `<td>` elements in a large table (3 or more cells in width and height) have an associated table header may improve the experience for screen reader users. Learn more about table headers.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
Philidor Defense Rapid
41 minutes remaining
1h 57m 166
≤2000 Bullet
11 minut… div.lobby__tournaments-simuls > div.lobby__tournaments > div.lobby__box__content > table.tournaments |
These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on Core Web Vitals. Learn more about Google Search Essentials.
Search engines may use `href` attributes on links to crawl websites. Ensure that the `href` attribute of anchor elements links to an appropriate destination, so more pages of the site can be discovered. Learn how to make links crawlable
Performance issues directly impact user engagement and conversion rates.
| Uncrawlable Link |
|---|
header#top > div.site-buttons > div#clinput > a.link header#top > div.site-buttons > div#clinput > a.link |
To appear in search results, crawlers need access to your app.
Informative elements should aim for short, descriptive alternate text. Decorative elements can be ignored with an empty alt attribute. Learn more about the `alt` attribute.
Performance issues directly impact user engagement and conversion rates.
| Failing Elements |
|---|
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image div.carousel__track > a.ublog-post-card > span.ublog-post-card__top > img.ublog-post-image |
Format your HTML in a way that enables crawlers to better understand your app’s content.
Send Feedback