How to Create a Car Comparison CSV Template for Comparing Listings

Build a car comparison CSV template to keep listings side by side, add your own notes, separate missing details from real drawbacks, and narrow down a shortlist.

12 min readImporting and exporting comparison data0 viewsHow to Create a Car Comparison CSV Template for Comparing Listings
— · 0 votes
Contents
  1. What columns should a car comparison CSV template include?
  2. Listing fact columns
  3. Your own information columns
  4. How do you set up the CSV template?
  5. How do you import the CSV into a spreadsheet without breaking the data?
  6. Settings to check during spreadsheet import
  7. Handling commas, quotes and line breaks
  8. How do you export the comparison so nothing is lost?
  9. Which differences between car listings actually matter?
  10. Asking price versus total cost
  11. Mileage and model year together
  12. Trim, powertrain and equipment
  13. History and documentation
  14. How do you compare cars against your personal priorities?
  15. Step 1: Set must-haves
  16. Step 2: Weight and score the rest
  17. Example: the same trade-off, two different buyers
  18. How do you tell missing information from a genuine drawback?
  19. Why blank cells need a reason
  20. How do you turn the CSV into a clear shortlist?
  21. Common mistakes that weaken a car comparison CSV

A car comparison CSV template is a plain-text table with one row per car listing and one column per detail, such as listing URL, make and model, model year, mileage and asking price, plus columns for your own notes, missing-information flags and priority scores. Because CSV (comma-separated values) opens in almost any spreadsheet app, you can collect details from different sites in one place, sort and filter them, and narrow them down to a shortlist without retyping anything when you switch tools.

This guide covers which column headers to include, how to import and export the file without damaging the data, which differences between listings matter, and how to tell a gap in the listing apart from a real drawback.

What columns should a car comparison CSV template include?

A useful car comparison CSV template has two groups of columns. The first records what each listing actually says. The second records your own information and judgements. Keeping the two apart lets you see at a glance whether a value came from the seller or from you.

Listing fact columns

Column headerWhat to enterFormat tip
listing_idYour own short code for the listing, such as A01Treat as text so leading zeros are kept
listing_urlThe full web address of the advertPaste the whole URL. Listings get removed, so save the key details too
date_savedThe day you recorded the listingYYYY-MM-DD sorts correctly in every app
seller_typeDealer, private seller or otherUse a fixed set of words so you can filter
makeManufacturerSpell it the same way in every row
modelModel nameKeep the trim or variant in its own column
trimTrim level, engine or variant as statedCopy the listing wording
model_yearModel year as stated in the listingFour digits, numbers only
first_registrationRegistration date, if givenYYYY-MM. This can differ from model year
mileageOdometer reading as statedDigits only, no commas or unit letters
mileage_unitkm or miNeeded when listings come from different countries
asking_priceAdvertised priceDigits only, no currency symbol
currencyCurrency code, such as EUR, GBP or USDKeeps prices from being mixed up
fuel_powertrainPetrol, diesel, hybrid, plug-in hybrid, electric and so onUse a fixed set of words
transmissionManual or automaticUse a fixed set of words
ownersNumber of previous owners, if statedNumbers only. Leave blank if not stated
service_historyFull, partial, none, or not statedRecord only what the listing or seller says
inspection_or_warrantyRoadworthiness test expiry, warranty terms, if anyDates as YYYY-MM-DD
stated_issuesFaults or damage the seller mentionsQuote briefly. Do not paraphrase into something stronger or weaker
locationTown or region of the carUseful for viewing and transport costs

Your own information columns

Column headerPurpose
missing_infoA list of details the listing does not give, such as owners; service_history
questions_askedWhat you asked the seller and when
seller_answersAnswers received, kept separate from the original listing facts
est_extra_costsYour own estimate for travel, transport, known repairs or registration, in the same currency as the price
must_haves_metYes, no or unknown, checked against your non-negotiable requirements
priority_scoreYour weighted score (explained below)
personal_notesImpressions, viewing notes, reminders
shortlistYes, maybe or no

You do not need every column. Drop the ones that never apply to your search, and add columns for anything you care about that is missing, such as boot space, towing capacity or electric range. Each column should hold one kind of information only.

How do you set up the CSV template?

You set up a car comparison CSV template by writing a single header row, then adding one row per listing using consistent formats. Follow these steps:

  1. Write the header row. Put the column names on the first line, separated by commas. Use short names without spaces or special characters, such as asking_price rather than Asking Price (£). These names survive import and export more reliably.
  2. Decide units before entering data. Choose either kilometres or miles, and one currency, or record the unit in its own column. Mixed units in one column make sorting meaningless.
  3. Keep numbers as plain numbers. Enter mileage and asking price as digits only, without thousands separators, symbols or words like approx. Otherwise the spreadsheet treats them as text and cannot sort or calculate.
  4. Use fixed values for category columns. Pick a small set of words for columns like seller_type or service_history and stick to them, so filters catch every matching row.
  5. Add one row per listing. If the same car appears on two sites, keep one row and note the second URL in personal_notes, so it is not compared against itself.
  6. Save the file as CSV in UTF-8 encoding. UTF-8 keeps accented letters and currency symbols in notes readable in other apps.

A header row and one example row with placeholders look like this in a text editor:

listing_id,listing_url,date_saved,make,model,trim,model_year,mileage,mileage_unit,asking_price,currency,service_history,missing_info,personal_notes,shortlist
A01,[paste listing URL],[YYYY-MM-DD],[make],[model],[trim],[year],[digits],km,[digits],EUR,not stated,owners; service_history,"Seller says recent tyres, ask for receipt",maybe

The personal note is wrapped in double quotes because it contains a comma. Without the quotes, a spreadsheet would split that note across two columns.

How do you import the CSV into a spreadsheet without breaking the data?

The safest way to import a car comparison CSV is through the spreadsheet's import or open-file dialog, where you can choose the delimiter, the encoding and the column types, rather than double-clicking the file and accepting automatic guesses.

Settings to check during spreadsheet import

  • Delimiter. Choose comma if your file uses commas. In regions where the comma is the decimal separator, some spreadsheet apps expect semicolons instead. If every row lands in a single column, the delimiter setting is the likely cause.
  • Encoding. Select UTF-8 so that accented names and symbols display correctly.
  • Text columns. Set listing_id and any reference numbers to text so leading zeros and long numbers are not altered.
  • Date columns. ISO dates (YYYY-MM-DD) are least likely to be swapped between day-first and month-first formats.
  • Number columns. After import, check that mileage and asking_price are right-aligned or otherwise recognised as numbers. Try sorting one column to confirm.

Handling commas, quotes and line breaks

In a CSV file, any field containing a comma, a double quote or a line break must be wrapped in double quotes, and a double quote inside such a field is written twice. Spreadsheet apps do this automatically when they save CSV. You only need to think about it when editing the file by hand or pasting long notes.

How do you export the comparison so nothing is lost?

CSV export saves only the cell values of the current sheet. Formulas, colours, comments, filters and extra sheets are not kept. Your scores will appear as fixed numbers, and any highlighting is lost.

  1. Keep a working copy in your spreadsheet app's own format. This preserves formulas, weights and formatting.
  2. Export to CSV for sharing, backup or moving between tools. Anyone can open it, whatever software they use.
  3. Put the date in the file name, for example car-comparison-2026-11-15.csv, so you can tell versions apart.
  4. Re-open the exported file once to check that numbers, dates and notes came through intact before deleting older copies.
  5. Keep priority weights in a separate small table. Your scoring then stays clear even if the formulas are gone after export.

Which differences between car listings actually matter?

The differences that matter most are the ones that change what the car will cost you over time or whether it fits your needs. Small cosmetic or wording differences matter less. A side-by-side CSV makes these differences visible, but a few columns need care to interpret.

Asking price versus total cost

The asking price is only the starting figure. Two cars with similar asking prices can differ once you add your estimated extra costs, such as travel to collect the car, work the seller has said is due, or an expiring inspection. A column like est_extra_costs, added to asking_price, gives a fairer comparison. Remember that it holds your estimates, not facts from the listing.

Mileage and model year together

Mileage on its own says little without the car's age. Dividing mileage by the car's age in years gives a rough distance-per-year figure that you can compare across listings. Treat it as an indicator only. Some parts wear with distance, while others, such as tyres and rubber components, can age even when a car is driven little. Also check whether the listing gives a model year, a registration date, or both, because these are not always the same.

Trim, powertrain and equipment

The same make and model can come in variants with different engines, gearboxes and equipment. Compare trim against trim, and note the features you actually need rather than the length of the equipment list.

History and documentation

Service history, number of owners and stated issues often explain price differences. Documented history does not guarantee condition, but it gives you something to check. An unexplained low price is a reason to ask questions, not a conclusion in either direction.

How do you compare cars against your personal priorities?

You compare cars against personal priorities in two steps. First, rule out any listing that fails a must-have. Then score the remaining listings on the things you care about, weighted by how much each one matters to you. No single car is best for everyone. The same two listings can rank differently for two different buyers.

Step 1: Set must-haves

Must-haves are pass-or-fail requirements, such as a maximum total budget, automatic transmission, a minimum number of seats or a specific powertrain. Record yes, no or unknown in a must_haves_met column. A no removes the listing. An unknown keeps it in play until you find out.

Step 2: Weight and score the rest

  1. List three to six priorities, for example running costs, space, comfort, documentation and distance to the seller.
  2. Give each priority a weight, such as 1 (nice to have) to 3 (very important).
  3. Rate each listing on each priority, such as 1 to 5, based only on information you have.
  4. Multiply each rating by its weight and add them up to get priority_score. A spreadsheet SUMPRODUCT formula does this in one cell.
  5. Sort by priority_score, but read the notes before trusting the order. The score summarises your judgement. It does not replace it.

Example: the same trade-off, two different buyers

Imagine Listing A has a lower asking price but does not state its service history. Listing B costs more and says it has full documented service history. A buyer with spare budget who places a high weight on documentation may score Listing B higher. A buyer working to a tight budget, who plans to arrange an independent inspection anyway, may score Listing A higher, provided the seller can answer the history question. Neither choice is wrong. The weights simply reflect different priorities.

A second common trade-off is a newer car with higher mileage against an older car with lower mileage. Which one suits you depends on how you weigh age-related wear, distance-related wear, equipment and price. The CSV puts the numbers side by side, and your weights decide the balance.

How do you tell missing information from a genuine drawback?

Missing information is a detail the listing does not mention. A genuine drawback is a detail that has been stated or confirmed and that counts against the car for your needs. Treating a gap as a flaw can make you dismiss good options. Treating it as fine can hide real problems. Your CSV should record the difference explicitly.

SituationWhat it meansHow to record it
Detail not mentioned in the listingUnknown. Not good or bad yetLeave number cells blank, write not stated in text cells, and add the field to missing_info
You asked and are waitingStill unknown, but in progressNote the question and date in questions_asked
Seller answeredNow known. Judge it on its meritsRecord in seller_answers and update the score
Seller declined or could not answerA meaningful signal you can weighNote it in seller_answers and decide how much it matters to you
Fault or limitation stated in the listingGenuine drawback, if it affects your needsCopy it into stated_issues and score accordingly

Why blank cells need a reason

A blank cell is ambiguous. It could mean not stated, forgotten or not applicable. For number columns such as mileage or owners, leave the cell blank so sorting and formulas still work, and explain the gap in missing_info. For text columns, write not stated rather than leaving them empty. When scoring, give unknowns a neutral rating or skip that priority for the listing, rather than the lowest rating, until you have an answer.

How do you turn the CSV into a clear shortlist?

You build a shortlist from a car comparison CSV by filtering out listings that fail must-haves, closing the biggest information gaps on the remaining ones, and then ranking by your priority score and notes.

  1. Filter out failures. Hide every row where must_haves_met is no.
  2. Remove stale listings. Check that each listing URL still works, and mark sold cars so they do not take up attention.
  3. Close key gaps. For listings that look promising, ask the seller about the most important fields in missing_info.
  4. Update and re-score. Enter answers, adjust est_extra_costs if needed, and recalculate priority_score.
  5. Mark the shortlist. Set shortlist to yes for a small number of cars you would actually view. Use maybe for backups.
  6. Export a dated CSV of the shortlist to take to viewings or share with someone helping you decide.

Common mistakes that weaken a car comparison CSV

Most problems with a car comparison CSV come from inconsistent data entry, not from the format itself.

  • Units and symbols inside number cells, such as 85,000 km or €12k, which stop sorting and calculations from working.
  • Mixing listing facts with opinions in the same column, so you can no longer tell what the seller said.
  • Inconsistent spellings of makes, models or categories, which make filters miss rows.
  • Relying on the URL alone, then losing the details when the advert is removed.
  • Editing only the CSV and losing formulas and weights on export, instead of keeping a working copy in your spreadsheet's own format.
  • Scoring unknowns as negatives, which pushes incomplete but possibly suitable listings off the shortlist too early.

With clear column headers, consistent formats and a separate record of what is unknown, a car comparison CSV template turns scattered listings into a comparison you can sort, share and revisit. The final choice still rests on your own priorities.