Skip to content

CSV export and import

The CSV tools are in the toolbar of the Category editor tab. They work on the list you have open: categories, tags or brands. The export and the import use the same columns, so an export is also the template for an import.

Click Export CSV. Your browser downloads a file named after the list, like brainrune-cat-2026-10-27-142530.csv, brainrune-tag-… or brainrune-brand-…, with one row per term, empty ones included.

Take an export before any bulk change. It is your backup.

Column Content
term_id The term ID. Used to find the term on import.
slug The slug.
name The name.
description The description.
seo_title The SEO title from your SEO plugin.
seo_description The meta description from your SEO plugin.
robots The robots setting. Empty when the default applies.

The robots column holds index or noindex, followed by ,nofollow when nofollow is set. For example noindex,nofollow. An empty cell means the site-wide default applies.

The file is UTF-8, comma separated, and starts with a byte order mark so Excel shows accented letters correctly.

  1. Edit the exported file in any spreadsheet. Keep the header row as it is.

  2. Save it as CSV, UTF-8, comma separated.

  3. On the Category editor tab, open the same list the file came from (Categories, Tags or Brands), click Choose CSV and pick the file.

  4. Click Import CSV.

The page reloads on that list with “Import finished. N categories updated.” If the file cannot be read, you get “The CSV could not be read. Check the file and try again.”

Each row is matched to an existing term of the open list by term_id. If there is no term_id, or it does not match, the row is matched by slug instead. A row that matches nothing is skipped, so a categories file imported on the Tags list changes nothing.

The import never creates terms and never deletes them. It only updates the ones it finds.

For every matched row, the import writes the name, slug, description, SEO title, meta description and robots, exactly as the editor would.

A column missing from the file is left alone. Leave out robots, for example, and no robots setting changes. This holds for every column since version 2.2.0; before it, a missing description, seo_title or seo_description column cleared that field.

Other things to know:

  • An empty cell clears the value. An empty seo_title or seo_description cell removes the value from your SEO plugin, so its global template applies.
  • An empty name or slug cell leaves the name or slug as it is.
  • Without an active SEO plugin, the SEO title, meta description and robots columns are ignored.
  • Header names are not case sensitive. meta_description and seo_desc are accepted as names for the seo_description column.
  • Blank rows are skipped.

Changing a slug in the file has the same effect as changing it in the editor: the old URL returns a 404 until you add a 301 redirect. After the import, a notice counts the slugs that changed.