ImportFiles

Import file columns and formats

Every field a column of your import file can fill and what it accepts, the file types and templates, and what the import checks before it runs.

Every row of an import file needs the customer's name, and either the testimonial's text or a link to a video. Every other column is optional. This page lists each field a column can fill and what it accepts, the file types and templates, and what the import checks before it runs.

To run an import, see Import testimonials from CSV, Excel or JSON. If your file comes from another tool, see Move your testimonials from Senja or Testimonial.to for the column names of its export.

Fields a column can fill

On the Map Columns step, you pick one column of your file for each field. You must map User Name and either Testimonial Content or Video URL.

FieldWhat the column holdsName in the templates
User NameThe customer's name. Every row needs one.name
User EmailTheir email address.email
User TitleTheir job title.title
CompanyTheir company's name.company
User AvatarA link to their photo.avatar
Testimonial ContentThe testimonial's text. Every row needs it, unless the row has a video link.content
RatingA number from 1 to 5. A decimal is rounded to the nearest star.rating
TitleA headline for the testimonial.testimonial_title
Video URLA link to a video file. See Rows with a video link.video_url
TagsTags, separated by commas.tags
Source URLA link to the place the testimonial was first published.source_url
Social Profile URLA link to the customer's profile on a social network.social_profile_url
Attached ImagesLinks to images, separated by commas.attached_images
Company LogoA link to the company's logo.company_logo
Company LinkA link to the company's website.company_link
Testimonial DateThe date of the testimonial, written year first: 2024-01-15.testimonial_date

Columns with common names are matched for you, such as name, author, review, stars or date. Capital letters, spaces, dashes and underscores make no difference. A column that isn't mapped to a field isn't imported.

Text is saved as plain text. HTML tags in your file are removed.

Links must start with http:// or https://.

Ratings on another scale, such as marks out of 10, need converting to 1 to 5 before you import. A rating outside 1 to 5 is left out with a warning, and the row is imported without stars, like a row with no rating.

Dates written year first, such as 2024-01-15, are read as written. That's the form the templates use. A date written only as numbers is read by its own numbers where they allow one reading: 13/04/2024 is 13 April. Where both could be a month, as in 03/04/2024, it's read month first, with a warning that says which day was chosen.

A cell that holds only a number is read as a date in two cases. Four digits from 1900 to 2100 are a year, and stand for 1 January of that year. A spreadsheet's own number for a date, such as 45306 (a date column saved as numbers), is read as that day, with a warning that says which day. Any other number isn't a date: the row is imported without one, with a warning.

Tags are kept only when your project already has them, so create them first: in Pending or Approved, click Options, then Manage tags. Tags from a file are saved in lowercase. See Organize testimonials with tags.

Pictures come in as the addresses in your file. Whether ReTestimonial stores its own copy of each one depends on Download image URLs: see Import options. To check a picture afterwards, see Check that your pictures were copied.

A row with an address under Video URL becomes a video testimonial. The video file isn't copied: the testimonial holds only the address, and the video is loaded from there whenever someone presses play, in your inbox or in a widget.

  • Use a direct link to a video file, such as one that ends in .mp4. It stops playing when the file is removed from that address.
  • A video on a video site, such as YouTube, Vimeo or Loom, belongs under Media Platforms instead, which plays it in that site's own player. In a file, a link to such a page is left out with a warning: the row is imported with its text, and a row that has nothing else is skipped. See Video and audio imports.
  • To keep your own copy of a video, upload its file from your inbox. See Move your videos.
  • Text is optional on these rows. Where you have the customer's words, map them to Testimonial Content as well.
  • Each of these rows counts as a video testimonial toward your plan's limit. See Video testimonials.

Custom fields

If your project has custom fields (available on Pro, Premium and Business), map them under Custom Field, below the standard fields; a column with the same name is matched for you.

A value that doesn't fit its field, such as an option a dropdown doesn't have, is skipped with a warning. An empty required custom field doesn't block the import: the row imports without that value.

Field typeWhat the column holds
Short Text, Long TextText. HTML tags are removed.
URLA link that starts with http:// or https://.
Checkboxtrue, yes, y, 1 or on for Yes; false, no, n, 0 or off for No.
DropdownOne of the field's options. Capital letters make no difference.
NumberA number, such as 1500 or 1,500. The field's own rules apply: its Minimum value and Maximum value, and whether it allows decimals and negative numbers.
CountryThe country's name or its two-letter code, such as US.
CurrencyAn amount with its currency, such as USD 4999, 4999 USD or €49.99. An amount on its own takes the field's Default currency. Use a comma for thousands and a dot for decimals.

A Country field that collects a region has a second row on the mapping step, named after the field and ending in Region. Map it to a column that holds the state or province. For the US, Canada, Australia, the UK and India, write the region's name or its code, such as California or CA; for other countries, any text is kept. When the field requires a region, a row without a usable one is imported without the field's value.

In the templates, each custom field's column is named after the field, in lowercase with underscores: company_size for a field called Company Size.

Supported files

  • Free accepts CSV files; Pro, Premium and Business accept CSV, XLSX and JSON files. XLSX is an Excel file (.xlsx or .xls).
  • On a plan that doesn't accept Excel or JSON files, the upload box shows an Upgrade link to unlock them.
  • In a CSV or Excel file, the first row must hold your column names. Empty rows are skipped.
  • Only the first sheet of an Excel file is read.
  • A JSON file must be an array of objects, or an object holding a testimonials or data array. Each object's property names are the columns.
  • Save CSV and JSON files with UTF-8 encoding.
  • Rows you paste under Paste Data are read like a CSV file, with your column names in the first row. Pasting is on every plan. The separator between columns is detected for you; if the columns come out wrong, choose it yourself: comma, tab, semicolon, pipe, colon, space or equals sign.
  • The upload box shows the largest file it accepts and, when your plan has a limit, the most rows it takes in one import. See Plan limits.

A JSON file with one testimonial looks like this:

[
  {
    "name": "Jane Doe",
    "content": "Testimonial text goes here.",
    "rating": 5
  }
]

Templates and presets

Open Need a template or migrating from another platform? above the upload box:

  • Download templates: a CSV template, XLSX template or JSON template with a sample row and a column for every field, including your project's custom fields.
  • Import presets: sample CSV files that use the column names of Senja and Testimonial.to. See Move your testimonials from Senja or Testimonial.to before you close your old account.

What validation checks

When you click Validate Data, every row is checked before anything is imported.

Errors skip the whole row. A row has an error when it has no name, has neither testimonial text nor a video URL, or its email address or domain is on your project's spam blacklist (while spam detection is on).

Warnings keep the row but drop one value: an invalid email address, link or date, a rating that isn't a number from 1 to 5, a tag the project doesn't have, or a link to a YouTube, Vimeo or Loom page under Video URL (add those under Media Platforms instead; only a direct link to a video file plays).

A date written only as numbers, such as 03/04/2024, could mean two days. It's read month first, with a warning that says which day was chosen. A spreadsheet's date number, such as 45306, gets a warning with the day it was read as. Write dates as YYYY-MM-DD to leave no doubt. With Download image URLs on, a picture that couldn't be copied gets a warning too, and keeps loading from the address in your file.

Duplicates aren't counted at this step. With Skip duplicates on, they're skipped while the import runs: see Import the same file again.

If a message stops your import or rows are skipped that you expected to come in, see File import failed or skipped rows.

Was this page helpful?

On this page