Overall Score
AppEritivi Milano has a visually attractive hero section and decent responsive design, but it's drowning in technical debt, accessibility issues, and performant-killing bloat that would make any developer weep into their Negroni.
The Roast
This website is like a beautiful aperitivo served in a dirty glass—aesthetically pleasing but fundamentally broken under the hood. The site loads slower than a bartender making a craft cocktail (6.8s LCP, seriously?), has zero meaningful content crawlable by search engines, and accessibility features so sparse you'd think blind users are just supposed to guess where the bars are. It's got the SEO score of a closed bar during Lent, yet somehow still managed to launch with zero internal links, zero external links, and absolute radio silence on the keyword ranking front.
🎯 Start Here
Google PageSpeed Insights
(Real metrics from Google)These scores come directly from Google's PageSpeed API. The AI scores above evaluate broader aspects like copy, trust signals, and conversion.
Core Web Vitals
Accessibility
SEO
Performance
Trust Signals
Conversion
Design & UX
Mobile
Copy & Messaging
Accessibility
The accessibility score is lower than a cocktail's alcohol percentage, with zero ARIA attributes, no skip links, and what appears to be a visual design that doesn't translate to screen readers at all. Users relying on assistive tech are basically persona non grata here.
Issues Found
- Zero ARIA attributes (0/total)—image-heavy design with no alt text alternatives, zone cards with no semantic labels, and interactive elements with no accessible names
- No skip-to-content link—users must tab through header navigation before reaching main content
- Hero image is decorative background CSS with text overlaid—completely inaccessible to screen readers; the value proposition ('L'aperitivo che cercavi') is unreadable without vision
Recommendations
-
Add comprehensive ARIA labels and alt text high
Label all interactive elements (buttons, links, zone cards) with aria-label; add meaningful alt text to background images or move text to HTML.
-
Implement skip-to-main-content link high
Add a visible-on-focus skip link at the top of the page to jump directly to main content, bypassing repeated navigation.
-
Ensure color contrast and semantic HTML medium
Verify heading hierarchy (h1, h2, h3), test text contrast ratios (especially white text on dark hero image), and use semantic elements instead of divs.
SEO
This is an SEO funeral—the meta tags are decent, but the page content is completely hollow (0 words in body), there are zero internal links to navigate the information architecture, and the site likely isn't indexed beyond the homepage. Google's crawlers are staring at a beautiful picture and nothing else.
Issues Found
- PageSpeed SEO score of 0—this is a catastrophic red flag indicating serious technical SEO failure (likely missing structured data, broken rendering, or critical crawl issues)
- Zero internal links means no link juice distribution and users can't navigate between zones or bar listings; the site structure is invisible to search engines
- Content is entirely image-based or JavaScript-rendered (9 zone cards) with no indexable text—Google sees a pretty blank slate
Recommendations
-
Add internal linking architecture high
Create SEO-friendly links from homepage to each zone page (/zona-1, /zona-2, etc.) and from zones to individual bar listings; use descriptive anchor text.
-
Implement structured data (JSON-LD) high
Add LocalBusiness schema for each bar, LocalSearchInput schema for the zone filter, and FAQPage schema to boost SERP visibility and rich snippets.
-
Render content server-side or include in HTML high
Move zone descriptions and bar previews from JavaScript-dependent cards into static HTML so Google crawls and indexes the content immediately.
Performance
This site performs like a bartender who's already 3 Aperol Spritzes deep—slow, bloated, and full of unused code nobody asked for. The 6.8s LCP is absolutely brutal for a directory site, and the unused CSS/JavaScript warnings scream 'framework bloat without optimization.'
Issues Found
- LCP of 6.883 seconds (target: <2.5s)—the hero image is likely unoptimized or the font loading is blocking render; this kills engagement
- PageSpeed Performance score of 68 is below 'good' (75+), indicating multiple optimization opportunities are being ignored
- Unused CSS and unused JavaScript are explicitly flagged—the site is shipping dev dependencies, unminified assets, or unnecessary libraries to production
Recommendations
-
Optimize hero image delivery high
Use modern formats (WebP), responsive srcset, lazy loading, and compression (target <300KB); consider a CDN to serve images faster.
-
Audit and eliminate unused code high
Run Chrome DevTools Coverage report to identify and remove unused CSS/JavaScript; consider code-splitting for below-the-fold sections.
-
Enable critical CSS inlining medium
Inline critical-path CSS (hero, nav, CTA) and defer non-critical stylesheets to eliminate render-blocking resources.
Trust Signals
Trust signals are almost entirely absent—there's no social proof (user reviews, ratings, testimonials), no credibility markers (curation process, expert team), and no security badges. The site reads like an MVP that launched before the trust-building features were implemented.
Issues Found
- No user reviews, ratings, or testimonials visible—users have no proof that 216 bars are real, good, or worth visiting
- Footer mentions 216 bars and social media links (Instagram, TikTok, Facebook) exist, but there's no explanation of who curates this list or why these bars were selected
- No 'About Us' or 'How We Work' section explaining the site's credibility—is this an expert curator? User-generated? AI-driven? Mystery.
- Legal links (Privacy, Cookie Policy) are present but don't build confidence; missing 'Fatto con ❤️ a Milano' badge or similar locally-relevant trust signal
Recommendations
-
Add social proof section high
Include a 'Featured in' section with logos of bars or publications, user review snippets, or aggregated ratings (e.g., 'Avg 4.6/5 stars across 216 bars').
-
Create an 'About' or 'How We Work' page medium
Explain the curation process, team background, or partnership model—even 2-3 paragraphs build massive trust and differentiation.
-
Integrate user-generated content or ratings low
Pull in real ratings from Google Maps, Instagram tags, or partner platforms to show live engagement and validation from actual visitors.
Conversion
The CTA is prominent and emotionally compelling ('Esplora la Mappa' with arrow), positioned perfectly in the hero, but the conversion funnel falls apart immediately after—there's nowhere for users to actually go. It's like designing a beautiful entrance to a restaurant with no dining room.
Issues Found
- 'Esplora la Mappa' button is the only CTA visible above the fold, and it presumably leads to a map view—but users can't see what awaits or what the full offering is
- Newsletter signup CTA in the blue section ('Scopri le ultime novità') is secondary and low-friction, but placed far down the page; no other conversion events (filter interactions, bar detail clicks, sharing) are visible
- Zone cards (Zona 1-9) are clickable, but there's no indication of what happens next or how many bars each zone contains—missing micro-conversions that build momentum
Recommendations
-
Add trust indicators and context before primary CTA medium
Include a brief stat line like '216 bars curated across 9 zones' or '40+ filters to find your perfect aperitivo' above/beside the 'Esplora la Mappa' button.
-
Make secondary CTAs scannable above the fold medium
Show the zone grid or at least a teaser ('Popular zones: Duomo • Navigli • Brera') higher up to reduce scroll friction.
-
Add micro-conversions throughout the journey low
Include zone preview cards with bar counts, add 'filter' buttons for categories, and implement wishlist/share functionality to increase engagement.
Design & UX
The hero image and color scheme are genuinely lovely—warm tones, excellent photography—but the design falls apart once you scroll past the fold where content becomes a barren wasteland of gray placeholder cards. The layout is clean and modern with decent hierarchy, but visual interest dies faster than a happy hour deal at closing time.
Issues Found
- Below-the-fold section (screenshot 2) shows 9 placeholder gray card boxes with zero actual content visible—looks unfinished or broken
- Inconsistent visual language: stunning hero hero photo vs. empty content areas create cognitive dissonance
- Navigation is hidden behind a hamburger menu on desktop (seen in mobile screenshot)—not ideal for desktop usability
Recommendations
-
Replace placeholder cards with actual content high
Populate the gray card grids with real bar previews showing imagery, zone names, bar count, and key details.
-
Optimize hero image file size high
The beautiful background image is likely a massive file causing the 6.8s LCP—compress aggressively without losing quality.
-
Restore desktop navigation menu medium
Show Home, Mappa, Zone links in a visible top nav on desktop instead of hiding them behind hamburger.
Mobile
Mobile responsiveness is solid—the hamburger menu is appropriate, the hero stacks correctly, and the zone cards appear to be touch-friendly. However, the performance issues that plague desktop are even worse on mobile, and the placeholder content problem is still glaringly visible.
Issues Found
- Hero text is readable but the background image may not fully load on slower mobile networks given the overall performance issues
- Zone card grid likely needs adjustment for smaller screens (seen as portrait on 375px)—verify card sizing doesn't require horizontal scroll
- Cookie consent modal is taking up significant viewport real estate on mobile (screenshot shows it's nearly fullscreen)—could be collapsed or simplified
Recommendations
-
Optimize mobile image delivery high
Serve smaller image files or lower resolution versions to mobile devices; test on 4G to ensure LCP stays under 3s on slower networks.
-
Simplify mobile cookie consent UX medium
Reduce the cookie banner to a single-line prompt with accept/settings buttons instead of the verbose full-screen modal shown.
-
Test touch target sizes medium
Ensure all buttons, links, and zone cards are at least 48x48px with adequate spacing to prevent accidental taps.
Copy & Messaging
The Italian copy is charming and emotionally resonant ('L'aperitivo che cercavi' = 'The aperitivo you were looking for'), and the value prop is clear—find bars by zone/price/characteristics. However, there's virtually no supporting copy beyond the hero; the site reads like an incomplete book with only the cover.
Issues Found
- Zero content in the main content area besides hero headline—no benefit statements, no USP expansion, no reason to engage beyond 'click here'
- Cookie consent messaging is verbose (Italian legal requirement) but doesn't explain what AppEritivi does or why users should trust it
- Missing descriptive text for the 9 zone cards—no bar counts, highlights, or differentiators visible
Recommendations
-
Add compelling zone descriptions high
Each zone card needs a 1-2 sentence description explaining what makes that neighborhood's aperitivo scene unique (e.g., 'Zona 1: Duomo - Brera | 40 bars with vintage Milanese charm and Michelin-adjacent cocktails').
-
Expand hero value proposition medium
Add a brief subheading or 2-3 bullet points below the hero CTA explaining the filtering capabilities (by zone, price, features, hours).
-
Add trust-building intro section medium
Insert a 1-paragraph 'About' section explaining that this is a curated guide to 216 bars with expert vetting and real user filters.
Think you can beat 47/100?
Get your site brutally analyzed by the same AI. 8 scores, a punch list of fixes, 60 seconds.