Core Web Vitals improvement breaks down into three metrics, each requiring specific fixes. Largest Contentful Paint (LCP) should be under 2.5 seconds—achieve this by optimizing your hero images with WebP format and proper sizing, using a CDN like Cloudflare or BunnyCDN, and ensuring server response times stay under 600ms through quality hosting. We've seen LCP drop from 4.2s to 1.8s just by switching from shared hosting to a VPS and implementing image optimization. First Input Delay (FID) measures interactivity and needs to stay under 100ms. The main culprit is JavaScript blocking the main thread. Defer non-critical JS, break up long tasks, use code splitting, and minimize third-party scripts. Google Tag Manager, chat widgets, and social media embeds are common offenders—audit what's actually necessary. Remove unused JavaScript entirely rather than just deferring it. Cumulative Layout Shift (CLS) should be under 0.1, meaning elements don't jump around during page load. Reserve space for images and ads by setting explicit width and height attributes in your HTML. Avoid inserting content above existing content unless it's in response to user interaction. Web fonts cause major CLS issues—use font-display: swap and consider system fonts for body text. Practical workflow: Run PageSpeed Insights and Search Console's Core Web Vitals report to identify which metrics fail. Fix the worst offender first since they compound. For Ottawa SEO's portfolio sites, we prioritize LCP because it typically has the biggest impact on rankings and user experience. Test on actual mobile devices, not just Chrome DevTools, since real-world conditions differ significantly from lab data. The 75th percentile matters—Google judges you on your worst-performing 25% of page loads. A site passing on desktop but failing on mobile 3G connections will still be penalized. Budget $800-2,500 CAD for professional optimization if you're not technical, though hosting upgrades and image compression can be DIY projects that solve 60% of issues immediately.