Ducted

Google Vehicle Listing Ads
feeds.

VIN-level inventory in Google Search and Shopping.

Vehicle Listing Ads put individual cars in front of shoppers searching for them, with photo, price and dealer location pulled straight from your inventory feed. The feed is the campaign: if a vehicle isn't in it, or its record is rejected, it can't be advertised.

The feed lives in Google Merchant Center and powers the campaign in Google Ads. Every record ties a physical car to a dealership: vehicle_fulfillment says how the shopper gets it, and a store code can pin the record to a specific location.

What the feed needs

Generated from the Ducted Google Vehicle Listing Ads template, the same field rules your mapping is validated against.

41 fields: 13 required, 3 recommended, 25 optional.

FieldLevelAccepted values / example
idrequiredVIN123456 or stock number
conditionrequiredNew · Used
brandrequiredToyota
modelrequiredCamry
pricerequired25000.00 USD
image_linkrequiredhttps://example.com/image.jpg
VINrequired1HGBH41JXMN109186
mileagerequired43000 KM
colorrequiredWhite
google_product_categoryrequired916 · 920 · 3018 · 4243
vehicle_fulfillmentrequiredin_store · online
yearrequired2022
linkrequiredhttps://dealer.com/vehicles/camry-2022
titlerecommended2022 Toyota Camry SE
vehicle_msrprecommended28000.00 USD
vehicle_all_in_pricerecommended27500.00 USD

Also supported (25 optional): store_code, link_template, availability, description, trim, body_style, engine, certified_pre-owned, additional_image_link, mobile_link, vehicle_option, vehicle_price_type, fuel_consumption, co2_emissions, electric_range, energy_consumption, date_first_registered, product_type, custom_label_0, custom_label_1, custom_label_2, custom_label_3, custom_label_4, ads_redirect, vehicle_mandatory_inspection_included

Where VLA feeds get rejected

Missing or malformed VIN

Every record needs one. A wrong-length VIN, or a stock number where the VIN should be, takes the record out of the campaign.

Condition outside the accepted list

"New" and "Used" are the accepted values. "Pre-owned", "CPO" or a trim name in the condition column all reject.

Price without a currency

The format is an amount plus the ISO code, like 25000.00 USD. A bare number or a currency symbol fails the format check.

Image link that is not a URL

A relative path or an empty value where image_link should be costs the record its listing.

Validate your VLA feed free →

From source to a live feed URL

  1. Connect the source. HomeNet, DealerOn, DealerMasters, All Auto Network, a file, a feed URL or a REST API. No source at all? Website Indexing builds one from the dealer site.
  2. AutoMap the fields. Every source column is scored against the vehicle template and the best match is pre-filled. You confirm or tweak.
  3. Transform what needs it. Casing, currency and number formats, conditional values, fallbacks for fields the source sometimes leaves empty.
  4. Validate before you send. The health check names the field, counts the affected records and shows example rows from your own data.
  5. Serve a permanent URL. The platform fetches your feed on a schedule; feed pull tracking shows when it last did.

The rest of the automotive stack

One mapped catalog serves every channel; each page covers what that platform's feed needs.

Automotive feedsMeta AutomotiveTikTok AutomotiveMicrosoft Automotive

VIN-level inventory, campaign-ready.

Check your current vehicle feed against the VLA rules free, or connect a source and map it.

Validate your VLA feed freeCreate free account