Craigslist Listings — Quickstart

Get your first batch of Craigslist Services or Real Estate listings imported in under five minutes.

← All listings guides

1. Download a sample file

Both samples contain three valid listings: a service, a real estate rental, and a real estate sale.

Download sample-listings.xml Download sample-listings.csv

2. Upload it

  1. Sign in and open CL Listings → Import XML/CSV.
  2. Pick the sample file and click Upload & Process.
  3. You should see 3 added · 0 skipped · 5 city postings created.
  4. Click the file name in Recent Uploads to open the import status page with per-row results.

Once that works, replace the sample rows with your own listings and re-upload.

3. Required fields cheat sheet

Full schema reference: XML · CSV.

FieldApplies toNotes
listing_typeAllservice | real_estate_rent | real_estate_sale
titleAll5–70 chars, plain text.
description_htmlAll≥ 20 chars of visible text after stripping HTML.
cityAllPhysical city of the listing.
state_regionAllState or region code (e.g. TX).
contact_email or contact_phoneAllAt least one is required.
city_marketsAllOne or more Craigslist city slugs.
service_typeServicee.g. cleaning, moving, lessons.
price_typeServicefixed | hourly | starting_at | quote_required.
price_minServiceRequired unless price_type = quote_required.
listing_intentReal estaterent or sale (must match listing_type).
property_typeReal estateapartment, house, condo, etc.
priceReal estateGreater than 0 USD.

4. Common validation errors

Each error appears on the import status page next to the row that triggered it.

ErrorLikely causeHow to fix
title must be 5–70 charactersTitle too short, too long, or empty.Trim to a clear 5–70 character headline. Avoid ALL CAPS and emoji-spam.
description must contain at least 20 characters of visible textDescription is empty or only HTML tags / whitespace.Write at least 20 characters of real copy. HTML tags don't count.
contact_email or contact_phone is requiredBoth contact fields missing.Provide at least one. Email must be valid; phone can be E.164 or local.
city_markets is requiredNo Craigslist city slugs supplied.Add one or more slugs (e.g. austin, sfbay, newyork).
price_min is required unless price_type = quote_requiredService listing has a numeric price_type but no price_min.Set price_min, or change price_type to quote_required.
price_max must be ≥ price_minRange inverted on a service listing.Swap the values, or omit price_max.
service_radius_miles cannot be set when service_area_mode = remoteRadius supplied for a remote service.Remove the radius or change the mode.
price must be greater than 0Real estate listing price is 0 or missing.Set a positive USD value with no currency symbol or thousands separator.
listing_intent must match listing_typereal_estate_rent paired with intent=sale (or vice versa).Use rent for real_estate_rent and sale for real_estate_sale.
available_date must be YYYY-MM-DDWrong date format (e.g. 06/01/2026).Use ISO format: 2026-06-01.
duplicate external_reference_id — listing skippedThat ID already exists for your account.Use a new ID, or update the existing listing instead.
invalid XML / CSV parse errorUnescaped & < > outside CDATA, missing closing tag, or unquoted comma in CSV cell.Wrap HTML in <![CDATA[…]]> for XML. Quote any CSV cell with commas, quotes, or newlines.