I watch a lot of contractors pour thousands into their websites, nail the copywriting, rank for “roof repair near me”—and then completely botch the most important conversion tool they have: their before-and-after photos.
Here’s what happens: A homeowner searching Google sees their listing, clicks through, scrolls the gallery, and then… nothing. No quote request. No call. They leave and find someone else whose photos made them feel confident about the work.
The problem isn’t that your photos are ugly. It’s that your photos are invisible.
Google’s visual search tools (Google Lens, Google Images, Pinterest Lens) have fundamentally changed how people find service providers. They’re not always typing “best roofer in Denver”—they’re snapping a picture of their damaged roof and asking the search engine “who can fix this?” But if your images aren’t properly optimized, configured, and structured for search, you won’t show up. Your competitor with the exact same quality work will, and they’ll get the lead.
I’ve helped rebuild galleries for over 200 local service businesses. The ones that fixed their visual SEO saw 30-40% increases in quote requests within 90 days, not because they hired a photographer, but because they made their existing photos actually searchable and trustworthy.
Let me show you exactly how to do it.
The Shift from Keywords to ‘Sight’: Why Visual Search Matters in 2026
For years, local service businesses lived in the text world. You optimized for keywords. You built content around “emergency plumbing” and “commercial HVAC repair.” Search engines read your words and matched them to searcher intent.
That’s still happening. But it’s not the only game anymore.
Google’s visual search technology has matured to the point where it’s now a primary discovery channel, especially in home services. A homeowner doesn’t always know the word for what’s wrong with their roof, or what style of kitchen renovation they want. They take a picture. Google Lens identifies the problem or style and shows results.
Here’s the shift that changes everything: Visual search results bypass keyword matching entirely. They’re based on image similarity, context, and metadata. This means a roofer in Chicago with perfectly optimized photos for “roof repair” can outrank a well-written blog post from a larger competitor who uploaded their images with generic filenames and zero alt text.
The difference between a pretty photo and a search-optimized photo is the difference between decoration and leverage.
A pretty photo says, “Look at this nice roof we installed.” A search-optimized photo says to Google: “This is a architectural shingle roof replacement in a residential area, completed in July 2024, located in the Lincoln Park neighborhood, with this specific color palette and pitch angle.” Google then uses that information to show your photo when someone searches visually for similar work.
The best part? Being the first visual result often means you bypass the traditional local pack entirely. You’re not fighting for position 1-3 in the map results. You’re in the image results, which have less competition and higher intent. Someone who visually searched for your exact service type and found your photo is ready to hire. They’re not comparison shopping at that point.
I recently helped a roofing company in Wisconsin dig into their Google Search Console and found they were getting 70+ impressions per month from Google Images, but almost zero clicks. The photos were good quality. They were ranked. But they had zero CTAs, zero structure, and no connection between the visual results and the quote request page. We fixed that in two weeks and saw 12 qualified leads from image search alone that month.
Visual search isn’t the future. It’s active right now, and it’s rewarding businesses who optimize for it.
Stop Uploading Dead Weight: The Problem with Generic Photos
Let me be blunt: Most contractors are uploading photos that harm their website, not help it.
Here’s the pattern I see constantly. A crew finishes a job. Someone snaps three photos on their phone. The crew lead emails them to the office. Someone uploads them to the website with the default filename: “IMG_0432.jpg,” “IMG_0433.jpg,” etc.
Google sees this and learns nothing. It can’t connect those images to your service or location. The images are invisible to visual search. They’re also hurting you in ways you probably don’t realize.
First, uncompressed phone photos are typically 4-8MB each. If you upload five to ten of these to a gallery page without compression, that page now loads in 8-12 seconds on mobile. Google ranks slower pages lower. Your conversion rates tank. Mobile users bounce before they see the photos that were supposed to convert them.
One landscaping company I worked with had a portfolio page with twelve uncompressed photos totaling 54MB. The page loaded in 18 seconds on 4G. They were generating 2-3 quote requests per month from that page. We compressed the images (reducing the total to 3.2MB), added proper file names, and optimized the page. Quote requests jumped to 12-15 per month just from fixing load speed and structure.
Second, stock photos are actively hurting your trust and your E-E-A-T signals. Google’s helpful content guidelines explicitly reward sites that demonstrate direct experience and expertise. Before-and-after photos prove you’ve done the work. A generic stock photo of a kitchen proves nothing. It tells Google and homeowners that you don’t have enough real work to show, or you’re not confident enough in your actual work to display it.
I can spot stock photos instantly. So can Google. A dentist using a generic “happy patient smiling” image isn’t building trust. A roofer using a stock photo of a roof (not their roof) is signaling that they either don’t have work to show or they’re being deceptive. Homeowners smell it too.
Third, those generic photo filenames and missing metadata make it impossible for Google to understand what you do, where you do it, or why someone should hire you specifically. Your photos become noise in the system instead of assets.
The fix isn’t complicated. It requires process and discipline, not money.
The 4-Step Checklist for Search-Optimized Project Photos
Every photo you upload should go through this four-step process. Do it consistently for 90 days and you’ll see visual search traffic start to climb.
Step 1: Descriptive File Naming
Rename your photo before uploading. Include the service type, the specific location (not just the city—the neighborhood), and ideally the result or style.
Instead of: IMG_0432.jpg
Use: kitchen-remodel-white-oak-cabinets-lincoln-park-chicago.jpg
Instead of: roof.jpg
Use: architectural-shingle-roof-replacement-northwest-denver.jpg
This does two things. It tells Google exactly what to categorize the image as, and it makes your image rankable for location-specific visual searches. A homeowner in Lincoln Park searching “kitchen remodel lincoln park” on Google Images will be far more likely to find your photo when the filename explicitly mentions that neighborhood.
File names should be lowercase, use hyphens (not underscores), and be under 75 characters. They should describe the actual content, not your company name or the job number.
Step 2: Strategic Alt Text
Alt text is meant for accessibility—to describe the image to people who can’t see it. But it also tells search engines what’s in the photo.
Don’t write: “before and after”
Write: “Kitchen remodel in Lincoln Park showing white oak cabinets, quartz countertops, and recessed lighting before and after renovation, completed August 2024”
Alt text should be 125-150 characters. It should include the service, location, specific materials or features, and ideally the timeframe. Write it as if you’re describing the photo to someone who can’t see it and who needs to understand why your work is noteworthy.
For a before-and-after pair, you can either combine them in one alt text or do separate images with individual alt texts. Both work, but separate images with individual alt texts give you two chances to rank, so that’s the better play.
Step 3: Geotagging and Metadata
This is where most contractors completely miss the boat. Every photo you upload should contain embedded GPS coordinates (geotagging) that tie it to your service area.
If you’re uploading photos directly from your phone to WordPress or your CMS, the metadata should be preserved automatically. If you’re uploading edited or compressed images, you may have lost the GPS data. Use a tool like Exiftool (if you’re technical) or a simpler UI like Photo Exif Editor to embed the coordinates of the job location into the image file.
Why? Because Google uses this data to connect your photos to the geographic area where the work was done. It strengthens the relevance signal. A homeowner searching “roof repair near me” in your area is more likely to see your photo if Google can verify that the work happened locally.
You can also add additional metadata like the photographer’s name, the copyright holder, and the date the photo was taken. Google doesn’t weight these as heavily, but they contribute to the overall picture.
Step 4: Structured Data (ImageObject Schema)
This is the nuclear option, and most contractors don’t do it. But it’s the difference between ranking well and dominating visual search.
Structured data (schema markup) tells search engines exactly what an image is and what it represents. You add a specific code block (JSON-LD format) to the page where the image appears.
Here’s a simple example:
{
"@context": "https://schema.org/",
"@type": "ImageObject",
"name": "Kitchen Remodel - White Oak Cabinets - Lincoln Park Chicago",
"description": "Before and after kitchen renovation showing white oak cabinets, quartz countertops, and recessed lighting",
"image": "https://yoursite.com/images/kitchen-remodel-white-oak-cabinets-lincoln-park-chicago.jpg",
"datePublished": "2024-08-15",
"geo": {
"@type": "Place",
"name": "Lincoln Park, Chicago",
"address": {
"@type": "PostalAddress",
"addressLocality": "Chicago",
"addressRegion": "IL",
"postalCode": "60614"
}
},
"author": {
"@type": "Organization",
"name": "Your Company Name",
"url": "https://yoursite.com/"
}
}
This tells Google: Here’s an image. Here’s what it shows. Here’s where it was taken. Here’s who created it. That context makes the image rankable for visual search queries in that geographic area, and it builds trust through transparent attribution.
You don’t need to do this for every single image. But for your strongest before-and-afters? The ones you want to rank for visual search? This is non-negotiable.
Most CMSs (WordPress, Webflow, etc.) have plugins or built-in tools to help you add schema markup without writing code. On WordPress, Yoast SEO and Rank Math both have image schema features. Use them.
Connecting Visuals to Conversion: From ‘Cool Photo’ to New Quote
Optimizing photos for search is half the battle. The other half is making sure those optimized photos actually convert into leads.
A homeowner finding your before-and-after photo on Google Images has high intent. They’re interested. But most contractors send them to a generic gallery page with no call to action, no context, and no way to move forward without manually digging through the website.
Fix that. When a photo is clicked from image search, it should land on a page that immediately explains what the work was, what the budget range might have been, and how to request a quote for similar work. Use overlays, captions, or nearby CTAs to make the next step obvious.
A landscaping company I worked with added a “Request Similar Quote” button to each project card in their portfolio. Nothing fancy. Just a button that popped up a form prefilled with the project type. Quote requests from the portfolio jumped 45% because they removed friction.
Second, feed your optimized photos into your Google Business Profile immediately. Your GBP photos are searchable on Google Maps, Google Images, and in local pack results. They’re also one of the highest-trust signals Google uses to verify your business. Upload your best before-and-after photos to your GBP and make sure they have proper alt text and captions there too.
A roofer in North Carolina started uploading one new optimized project photo to their GBP every week. Within four months, they were showing up in image search results they’d never ranked for before. They attributed 8-10 qualified leads per month to GBP image search traffic.
Third, use your optimized photos on social media with intentional CTAs. But here’s the key: don’t use the same filename or alt text. Each platform has its own algorithm and its own metadata structure. Optimize for each one individually. On Instagram, write captions that describe the transformation and mention the location. On Facebook, use the carousel