Audit overview
3 categories need attention: Performance, and 2 others.
Fix Priority Matrix
5 findingsQuick Wins
3High impact, low effort — start here.
Strategic
2High 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
Top Priorities (5)
'unsafe-eval' found in script source
Unsafe value (unsafe-inline, unsafe-eval) in script-src defeats CSP's main protection — XSS injections can execute again.
'unsafe-inline' found in script source
Unsafe value (unsafe-inline, unsafe-eval) in script-src defeats CSP's main protection — XSS injections can execute again.
Page weighs 14.6 MB (8.3 MB transferred)
Informational: total page weight (uncompressed) and bytes actually transferred over the wire.
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.
2 image-only link(s) without alt text
Image-only links with no alt are unidentifiable to screen-reader users — link's destination is invisible.
Business case
What fixing the audit's findings is worth -- and what ignoring them keeps costing.
Return on investment
₫7,800,000 investment → ₫301,357,407/month returns + VND 100,000,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 ~32%.
- Page takes 5.8s to loadUsers abandon at ~3s — you're 3.3s over the 2.5s threshold→ Optimize render-blocking resources, preload the hero image, and compress images
- Page feels frozen for 2.7sClicks on the primary CTA are ignored while JavaScript runs→ Break up long tasks; defer non-critical JavaScript to post-hydration
- Severe layout shift during page loadUsers mis-click when content jumps — converting intent into frustration→ Reserve space for images, ads, and embeds with explicit width/height
- 11 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
- 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
VND 100,000,000
- No privacy policy link detectedPDPD: VND 10,000,000 – VND 100,000,000
- 6 advertising/retargeting trackers detectedPDPD: VND 10,000,000 – VND 100,000,000
- Trackers detected but no cookie policy foundPDPD: VND 10,000,000 – VND 100,000,000
Bounce-Rate Cost
₫281,829,223 /mo
+32.2pp bounce · ~3,221 lost visitors/mo
CPC: VND 87500.00
Bandwidth Waste
₫52,154 /mo
26077.0 MB/mo × 2000.000 VND/GB
- Optimize transfer: save ~2.6 MB per page loadSaves ₫52,154/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.
2.06 s
Largest Contentful Paint Largest Contentful Paint — how long until the largest visible element loads. Under 2.5s is good.
5.80 s
Total Blocking Time Total Blocking Time — total time the main thread was blocked, preventing user input. Under 200ms is good.
2.67 s
Cumulative Layout Shift Cumulative Layout Shift — measures visual stability. How much the page layout shifts during loading. Under 0.1 is good.
1.003
Speed Index Speed Index — how quickly content is visually displayed during load. Under 3.4s is good.
11.57 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.
49.23 s
Desktop
First Contentful Paint First Contentful Paint — how long until the browser renders the first piece of content. Under 1.8s is good.
1.69 s
Largest Contentful Paint Largest Contentful Paint — how long until the largest visible element loads. Under 2.5s is good.
5.24 s
Total Blocking Time Total Blocking Time — total time the main thread was blocked, preventing user input. Under 200ms is good.
140 ms
Cumulative Layout Shift Cumulative Layout Shift — measures visual stability. How much the page layout shifts during loading. Under 0.1 is good.
0.087
Speed Index Speed Index — how quickly content is visually displayed during load. Under 3.4s is good.
4.02 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.
8.51 s
Categories
8Performance
Page weighs 14.6 MB (8.3 MB transferred)
Security
'unsafe-eval' found in script source
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 Google Font API sites score 87+ on Performance; you're at 66 — closing this gap is the highest-leverage improvement.
Technology stack
Funding Choices
Stack Architecture
All Detected Technologies (22)
Funding Choices is a messaging tool that can help you comply with the EU General Data Protection Regulation (GDPR), and recover lost revenue from ad blocking users.
Google Font API is a web service that supports open-source font files that can be used on your web designs.
HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.
HTTP/3 is the third major version of the Hypertext Transfer Protocol used to exchange information on the World Wide Web.
Open Graph is a protocol that is used to integrate any web page into the social graph.
Priority Hints exposes a mechanism for developers to signal a relative priority for browsers to consider when fetching resources.
Swiper is a JavaScript library that creates modern touch sliders with hardware-accelerated transitions.
Three.js is a cross-browser JavaScript library and application programming interface used to create and display animated 3D computer graphics in a web browser using WebGL.
Video.js is a JavaScript and CSS library that makes it easier to work with and build on HTML5 video.
jQuery is a JavaScript library which is a free, open-source software designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animation, and Ajax.
Criteo provides personalised retargeting that works with Internet retailers to serve personalised online display advertisements to consumers who have previously visited the advertiser's website.
Google Analytics is a free web analytics service that tracks and reports website traffic.
Google Publisher Tag (GPT) is an ad tagging library for Google Ad Manager which is used to dynamically build ad requests.
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.
Prebid is an open-source header bidding wrapper. It forms the core of our Nucleus ad platform, helping maximize revenue and performance for publishers.
PubMatic is a company that develops and implements online advertising software and strategies for the digital publishing and advertising industry.
TripleLift is an advertising technology company providing native programmatic to buyers and sellers.
Observations (3)
No build tool detected
A framework (Funding Choices) 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.
jQuery version may be outdated
Detected jQuery 2.1.4. The current major version is 3. Consider updating for security patches and new features.
Complex technology stack detected
22 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/results/5f98626e-cb72-4a52-a8fc-35d5f67f967c)<a href="https://beavercheck.com/results/5f98626e-cb72-4a52-a8fc-35d5f67f967c"><img src="https://beavercheck.com/badge?url=https%3A%2F%2Fvnexpress.net" alt="BeaverCheck Score"></a>https://beavercheck.com/badge?url=https%3A%2F%2Fvnexpress.netFix Plan
Three-week roadmap to ship the audit's findings, with one-click copy targets for your tracker.
Three-week fix plan
2 sprints · 13h total → projected B (81)
Sprint 1: Quick Wins
+6Highest ROI — low effort, high impact
- · Page weighs 14.6 MB (8.3 MB transferred)
- · 1 button(s) with no accessible text
- · 2 image-only link(s) without alt text
Sprint 3: Strategic Improvements
+5Higher effort, long-term payoff
- · 'unsafe-eval' found in script source
- · 'unsafe-inline' found in script source


