Global Performance
6/6 locations ✓Acceptable global latency — average 460ms across 6 locations, fastest from Amsterdam (153ms), slowest from Singapore (694ms). Assets on CDN77 (host c77.bookbot.com, 84 assets); document served directly from origin (AWS). Cache-Control disables caching (no-store). 3 locations above the 500ms target.
Audit overview
Sustainability needs attention; the rest of the categories are in good shape.
Fix Priority Matrix
5 findingsQuick Wins
4High impact, low effort — start here.
Strategic
1High impact, requires investment.
Easy Improvements
0Small gains, minimal effort.
Nothing in this quadrant — good news.
Deprioritize
0Low impact, high effort — do last.
Nothing in this quadrant — good news.
Screenshots
Your mail setup has problems.
knihobot.cz fails 1 mail check: DMARC policy is none — monitoring only. This is the kind of misconfiguration that sends your mail to spam.
Top Priorities (5)
Content-Security-Policy header is missing
Without a CSP, a single XSS bug can exfiltrate everything your users type — including credentials.
Cookie 'adonis-session' is missing the Secure flag
A cookie without the Secure flag can leak over HTTP — in HSTS-protected sites, this is still a defense-in-depth gap.
1 button(s) with no accessible text
Buttons with no accessible text (icon-only, no aria-label) can't be activated by voice control or understood by screen readers.
1 link(s) with no accessible text
Links with no accessible text (empty <a></a>, image-only no alt, icon-only no aria-label) are unidentifiable to screen readers.
No H1 heading found
No H1 means screen-reader users can't identify the page's primary topic, and Google's content-extraction degrades.
Business case
What fixing the audit's findings is worth -- and what ignoring them keeps costing.
Return on investment
CZK 4,858 investment → CZK 235,917/month returns + EUR 500,000 risk avoided
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.
Conversion barriers
7 barrier(s) likely increasing bounce by ~29%.
- Page takes 16.8s to loadUsers abandon at ~3s — you're 14.3s over the 2.5s threshold→ Optimize render-blocking resources, preload the hero image, and compress images
- Page feels frozen for 3.1sClicks on the primary CTA are ignored while JavaScript runs→ Break up long tasks; defer non-critical JavaScript to post-hydration
- 3 broken link(s) on the pageClicks land on 404s — trust drops and the session often ends→ Fix or remove the broken destinations surfaced on the Content tab
- HSTS is enabled but max-age is short (15724800s)First-visit protection is in place, but browsers forget the policy sooner than recommended→ Raise Strict-Transport-Security max-age to at least 31536000 (1 year)
- No Content-Security-Policy headerHigher XSS blast radius — one compromised script can exfiltrate the checkout form→ Ship a reporting-only CSP first, then enforce once violations are clean
Preliminary CRO audit — each barrier links to the tab with detailed analysis.
Remediation cost
Start here for the best return on investment
Cost by category
Cost by effort level
Adjust assumptions
Team composition
Multiplier applied to dev hours to reflect QA, design, and PM overhead. Use Dev only for solo work; Full team for projects with formal review processes.
Rates reflect fully-loaded developer cost including overhead
Warning:Cost of inaction
Compliance Risk
€500.000
- 6 of 7 <nav> elements are unlabeledEAA: EUR 1.000 – EUR 500.000
- Skip navigation link is missing (WCAG 2.4.1)EAA: EUR 1.000 – EUR 500.000
- No H1 heading foundEAA: EUR 1.000 – EUR 500.000
Bounce-Rate Cost
CZK 235.904 /mo
+29.0pp bounce · ~2,898 lost visitors/mo
CPC: CZK 81.40
Bandwidth Waste
CZK 13 /mo
7249.6 MB/mo × 1.860 CZK/GB
- Optimize transfer: save ~725 KB per page loadSaves CZK 13/mo
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
How this is calculated
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
Lighthouse
Mobile
First Contentful Paint First Contentful Paint — how long until the browser renders the first piece of content. Under 1.8s is good.
3.62 s
Largest Contentful Paint Largest Contentful Paint — how long until the largest visible element loads. Under 2.5s is good.
16.80 s
Total Blocking Time Total Blocking Time — total time the main thread was blocked, preventing user input. Under 200ms is good.
3.05 s
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.
6.96 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.
17.29 s
Desktop
First Contentful Paint First Contentful Paint — how long until the browser renders the first piece of content. Under 1.8s is good.
754 ms
Largest Contentful Paint Largest Contentful Paint — how long until the largest visible element loads. Under 2.5s is good.
1.58 s
Total Blocking Time Total Blocking Time — total time the main thread was blocked, preventing user input. Under 200ms is good.
606 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.42 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.
3.11 s
Categories
8Performance
All checks pass
Security
Content-Security-Policy header is missing
Accessibility
1 button(s) with no accessible text
SEO
All checks pass
Infrastructure
All checks pass
Compliance
All checks pass
Content
All checks pass
Sustainability
All checks pass
How you compare
Where this site stands against peers running the same stack.
Top 10% of Amazon Route 53 sites score 96+ on Content; you're at 76 — closing this gap is the highest-leverage improvement.
Technology stack
AdonisJS, on Node.js, hosted on Next.js
Stack Architecture
All Detected Technologies (21)
Next.js is a React framework for developing single page Javascript applications.
Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside a web browser.
AdonisJS is a Node.js web application framework that follows the MVC pattern, simplifying web development with features like ORM, authentication, and WebSockets.
Framer Motion is a modern animation library for JavaScript, React, and Vue.
Goober is a minified CSS-in-JS styling solution.
HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.
LazySizes is a JavaScript library used to delay the loading of images (iframes, scripts, etc) until they come into view.
Priority Hints exposes a mechanism for developers to signal a relative priority for browsers to consider when fetching resources.
React is an open-source JavaScript library for building user interfaces or UI components.
Sentry is an open-source platform for workflow productivity, aggregating errors from across the stack in real time.
Swiper is a JavaScript library that creates modern touch sliders with hardware-accelerated transitions.
Underscore.js is a JavaScript library which provides utility functions for common programming tasks. It is comparable to features provided by Prototype.js and the Ruby language, but opts for a functional programming design instead of extending object prototypes.
Webpack is an open-source JavaScript module bundler.
core-js is a modular standard library for JavaScript, with polyfills for cutting-edge ECMAScript features.
Google Analytics is a free web analytics service that tracks and reports website traffic.
Google Tag Manager is a tag management system (TMS) that allows you to quickly and easily update measurement codes and related code fragments collectively known as tags on your website or mobile app.
Observations (2)
No build tool detected
A framework (AdonisJS) was detected but no bundler was identified. The build tool may not be detectable from output patterns, or the site may use the framework's built-in bundler.
Complex technology stack detected
21 technologies identified. A complex stack increases maintenance burden and attack surface. Consider whether all components are actively needed.
Show your score
Drop this badge on your README, marketing site, or status page. It auto-updates every time the audit re-runs and links back to this report.
This badge auto-updates with your latest scan result.
[](https://beavercheck.com/sites/knihobot.cz)<a href="https://beavercheck.com/sites/knihobot.cz"><img src="https://beavercheck.com/badge?url=https%3A%2F%2Fknihobot.cz" alt="BeaverCheck Score"></a>https://beavercheck.com/badge?url=https%3A%2F%2Fknihobot.czFix Plan
Three-week roadmap to ship the audit's findings, with one-click copy targets for your tracker.
Three-week fix plan
2 sprints · 4h total → projected B (89)
Sprint 1: Quick Wins
+5Highest ROI — low effort, high impact
- · No H1 heading found
- · Cookie 'adonis-session' is missing the Secure flag
- · 1 button(s) with no accessible text
- · 1 link(s) with no accessible text
Sprint 2: Core Fixes
+3Medium effort, high structural impact
- · Content-Security-Policy header is missing


