v0 ui

Next.js Image Optimization Not Working

Your Next.js Image component doesn't optimize images properly. Original large images load unchanged, or the Image component shows errors and falls back to regular img tags.

Image optimization fails when the Image component isn't configured correctly, external images aren't whitelisted, or the image URL format is invalid.

Error Messages You Might See

Error: Invalid src prop on tag Image domain not configured [Image] config not set Image not loading or placeholder stuck
Error: Invalid src prop on tagImage domain not configured[Image] config not setImage not loading or placeholder stuck

Common Causes

  1. Using regular img tag instead of next/image Image component
  2. Missing or incorrect next.config.js image configuration for external domains
  3. External image domain not added to images.domains array
  4. Image dimensions not specified (width/height required for static images)
  5. Using placeholder before image loads without blurDataURL

How to Fix It

Use Next.js Image: Replace <img src=... /> with import Image from 'next/image'

Set width/height: Static images need explicit dimensions: <Image src={...} width={400} height={300} />

Configure external domains: In next.config.js:
images: { domains: ['cdn.example.com', 'img.example.com'] }

Enable priority: For above-fold images, add priority prop to prevent lazy-loading delays.

Real developers can help you.

Yovel Cohen Yovel Cohen I got a lot of experience in building Long-horizon AI Agents in production, Backend apps that scale to millions of users and frontend knowledge as well. AUXLE AUXLE I am a Full Stack Developer experienced in building Websites, Web apps and Cross Platform Mobile Apps for Startups and Companies. legrab legrab I'll fill this later MFox MFox Full-stack professional senior engineer (15+years). Extensive experience in software development, qa, and IP networking. Rudra Bhikadiya Rudra Bhikadiya I build and fix web apps across Next.js, Node.js, and DBs. Comfortable jumping into messy code, broken APIs, and mysterious bugs. If your project works in theory but not in reality, I help close that gap. Luca Liberati Luca Liberati I work on monoliths and microservices, backends and frontends, manage K8s clusters and love to design apps architecture hanson1014 hanson1014 Full-stack developer experienced in fixing and deploying AI-generated apps from Lovable, Bolt.new, Cursor, and Replit. I specialize in debugging Supabase integration issues (auth flows, RLS policies, database connections), fixing broken deployments, resolving routing/blank screen problems, and cleaning up messy React/Vite codebases. I also build production apps with the Claude API and have shipped a Mac desktop dev tool (Nexterm from scratch. Based in Hong Kong, fast turnaround. Mehdi Ben Haddou Mehdi Ben Haddou - Founder of Chessigma (1M+ users) & many small projects - ex Founding Engineer @Uplane (YC F25) - ex Software Engineer @Amazon and @Booking.com Jacek Rozanski Jacek Rozanski Senior PHP/Symfony developer and DevOps engineer with 20+ years of professional experience, running opcode.pl (web development agency, est. 2004). Day job: I'm the sole backend developer at merketing company where I own and maintain 11 PHP/Symfony microservices on AWS (ECS Fargate, RDS, S3, CloudFront), handle the full CI/CD pipeline (Bitbucket Pipelines, Docker), and manage monitoring with Sentry and CloudWatch. These services handle high request volumes in production every month. What I bring to AI-built apps: - I audit and fix security issues (OWASP methodology), performance bottlenecks, and architectural problems in codebases generated by Cursor, Claude Code, Lovable, Bolt, and v0 - I refactor AI-generated prototypes into production-grade applications with proper error handling, testing, and clean architecture (SOLID, DDD, hexagonal architecture) - I set up the infrastructure AI tools don't touch: AWS hosting, CI/CD pipelines, automated deployments, database optimization, monitoring, and alerting - I integrate external services: payment providers, email systems, partner APIs, SSO/auth Tech stack: PHP 8.x, Symfony, React, Next.js, PostgreSQL, MySQL, Docker, AWS (ECS, RDS, S3, SQS/SNS, CloudFront), Terraform, Supabase. I also use AI tools daily (Claude Code, Cursor) in my own workflow, so I understand both the strengths and the gaps in AI-generated code. Based in Poland (CET timezone). Available for async work and calls during EU/US business hours. Basel Issmail Basel Issmail ’m a Senior Full-Stack Developer and Tech Lead with experience designing and building scalable web platforms. I work across the full development lifecycle, from translating business requirements into technical architecture to delivering reliable production systems. My work focuses on modern web technologies, including TypeScript, Angular, Node.js, and cloud-based architectures. I enjoy solving complex technical problems and helping teams turn product ideas and prototypes into working platforms that can grow and scale. In addition to development, I often collaborate closely with product managers, business analysts, designers, and QA teams to ensure that solutions align with both technical and business goals. I enjoy working with startups and product teams where I can contribute both as a hands-on engineer and as a technical partner in designing and delivering impactful software.

You don't need to be technical. Just describe what's wrong and a verified developer will handle the rest.

Get Help

Frequently Asked Questions

When should I use next/image vs regular img?

Always use next/image for optimization. Provides automatic format conversion, responsive sizing, and lazy loading.

How do I handle images from external URLs?

Add the domain to images.domains in next.config.js. Then use Image component normally with full URL.

What's the difference between static and dynamic image dimensions?

Static: width/height known at build time. Dynamic: use fill prop with position: relative parent and CSS sizing.

Related v0 Issues

Can't fix it yourself?
Real developers can help.

You don't need to be technical. Just describe what's wrong and a verified developer will handle the rest.

Get Help