Note: This guide covers asset migrations supported by the Frontify Professional Services team.
At this point, you’ve read about the Asset Migration process and have defined the scope of the migration with your Customer Success Manager, and probably already spoken with your former DAM provider. Now, it’s time to dig deeper into the metadata topic. This article tells you how you should, ideally, prepare the metadata sheet for us.
Important note:
We need the metadata in a specific structure to be able to run a successful migration. After you’ve discussed the asset migration with your Customer Success Manager, you’ll receive a link to a template showing the following metadata possibilities. The first four pieces of this metadata information are mandatory, the rest of them are optional.
If you are not yet familiar with Standard and Custom Metadata, please review this help article.
Metadata Sheet Required Format
Your metadata can be provided in one of the following formats:
XLSX with a single sheet: Use this format when migrating assets into a single Library. XLSX is the preferred format where possible, as it is less prone to encoding issues with special characters.
CSV, TSV, or TXT: These formats can also be used for a single Library. When exporting these files, make sure the correct character encoding is used (UTF-8). Incorrect encoding can cause special characters, accents, or symbols to be interpreted incorrectly during migration.
XLSX with multiple sheets: If you’re migrating assets to multiple Libraries, you can use a single XLSX file with one sheet per Library.Before preparing the metadata file:
Create all target Libraries in Frontify.
Find the numeric Library ID for each Library (see image below).
Create one sheet in your XLSX file for each target Library.
Name each sheet with the corresponding numeric Library ID.
The sheet name tells us which Frontify Library the assets and metadata in that sheet should be migrated to.
For example, if the target Library ID is
12345, the corresponding sheet in your XLSX file must be named12345.In the image below, the Library ID is
111— use that as the sheet name.
Important: XMP/EXIF metadata
We do not accept XMP/EXIF data as the metadata source for an asset migration. Metadata must be provided in one of the supported formats above and mapped to the required Frontify metadata structure.
If your metadata is currently stored in XMP and you are unable to prepare the required mapping, we can connect you with one of our service partners who can support you with the transformation and mapping process.
Metadata Property Formatting Requirements
To ensure metadata imports correctly and consistently, metadata properties must follow specific formats. This section outlines the required formatting for common property types, such as dates, copyright information, and other structured values. Following these guidelines will help prevent import errors and ensure your metadata is stored accurately in Frontify.
ID
Mandatory Unique ID of the Asset File. If there are no IDs available from the former system, you can use sequential numbers, letters, a checksum, or anything else which is unique to each asset to be imported
Example: 1, 2, 3, a, b, c, d9673f3128fcfbd70d040f7dc18afbd8
Filename
Mandatory name of the file. This file name will be stored but it is not shown anywhere in Frontify. The Title (below) is what is displayed in Frontify for users. It is recommended that the file name does not contain special characters or accents (allowed characters are a-zA-Z0-9._-). The filename must have the correct extension appended to it.
Example: my_company_logo.jpg, Sound-file.mp4, 108765393.png
Location
Mandatory location of assets in the AWS S3 bucket folder. If you do a manual export, the easiest way is to have a flat list in the S3 bucket, to make the assets assignable to their location in the S3 bucket, via filename. It is recommended that the location does not contain special characters or accents (allowed characters are a-zA-Z0-9._-) and must be an exact match to the asset's location in the AWS S3 bucket folder.
Example: company/folder/subfolder/filename.jpg (must contain file extension)
Title
Mandatory title of the Asset. This title is displayed to the end-user (and is also the download name for the assets). If there is no title present in the metadata sheet, it will fall back to the filename without extension.
Example: official logo, sounds of the jungle, packaging
Related_IDs
Unique ID(s) of the Asset(s) that the Asset should be related to. If an Asset is related to multiple other Assets, separate the related IDs with a | character. Note that relations are always bidirectional. Hence if, for example, asset ID #1 has a relation with asset ID #4, this relation will be displayed from both asset ID #1 and asset ID #4 (no need to set the relation in both assets). Relations to attachments are not possible.
Relations are being shown in the “relations” tab in the frontend.
Attached_to_ID
Unique ID of the parent Asset for the Attachment. If you have an attachment associated with an asset (e.g., you have a PDF of a publication, but want to have the original InDesign package attached as Attachment), you’d need to add the ID of the parent Asset (the pdf file) in the line of the Attachment (child) asset (InDesign file).
Please note that only the following fields are valid for Attachments:
ID
Filename
Location
Title
Attached_to_ID
Preview_parent_ID
The ID of the parent asset, for which this file should be set as a custom preview (e.g. for zip files). Only gif, jpg or pdf file types are allowed to be used as Previews. Only one value is permitted in the Preview_parent_ID field.
Please note that only the following fields are valid for Preview assets:
ID
Filename
Location
Title
Preview_parent_ID
All other fields will be ignored.
Directory
The folder structure in which the Asset will be located in the backend of your library. This does not influence how the assets are shown to the end-user, in the front end. The folders are separated by a slash (/), so this structure Brand/Assets/Logo Mark would mean a subfolder Logo Mark within a subfolder Assets within the first level folder Brand.
Author (Creator)
The name of the person that created the original Asset (this uploader is shown in Metadata information). This is not mandatory but can be useful for keeping track of the original source of your Assets.
Description
Descriptive text of the asset content. Shown in metadata.
Tags
Here, you can add all your Keywords associated with the asset. Tags should be separated by a pipe (|). So, for example, “Brand Assets | Logo | Logo Mark | White” would create 4 tags (Brand Assets, Logo, Logo Mark, and White). If you’re choosing to import EXIF file information, the keywords associated with the file will be imported along with any tags defined in the CSV’s tags column.
Copyright
The Copyright status of the asset. This field only accepts the values “COPYRIGHTED”, “PUBLIC”, and “UNKNOWN”.
Copyright_notice
The Copyright Notice is a longtext field you can use for specific information about an asset’s copyright attribution.
Licenses
Names of the licenses to be applied to the asset (separated by pipe character "|"). For example, “External Distribution License|Other license” would apply 2 Licenses (“External Distribution License” and “Other license”). Please make sure to create the Licenses in the destination libraries in advance.
Workflow_status
The name of the workflow status in the target libraries that should be applied to the asset. If the named workflow status does not already exist, it will be created. Only one workflow name is allowed.
Collections
The name(s) of the collection(s) the asset should be added to. If the named collection does not already exist, it will be created. Multiple collection names should be separated by a "|".
expires_at
You can define a date when an asset will expire (or has already expired). You can define in your Library if expired assets should automatically be removed from the frontend view of your Library. The valid format for the Expiry Date RFC3339_EXTENDED format. For example, 2026-01-01T23:59:00+01:00 would represent the first of January 2026 at 11:59 PM in the UTC+1 timezone.
Custom Metadata
You can map almost any data to a custom metadata field. Detailed information on custom metadata and different types (eg Multi-select and Single-select) can be found here.
While it may be tempting to add many custom metadata fields to your libraries, remember that it's easy to overwhelm your users and librarians with too much information. Try to strike a good balance. Consider moving some information into tags or splitting your assets into multiple topic-focused libraries.
To add a new custom metadata field, simply add a new column to the metadata sheet, where you specify the name and then the type of the custom metadata field in brackets in the first line. For example: "Department (Single-select)"
Supported custom metadata fields and their formatted examples (please replace the names with your own):
(Single-select)
An example might be a department or a boolean option
users can select one value from a predefined list (eg Sales or Finance)
any value accepted (text, date, number etc)
(Multi-select)
An example might be a product line, category, or any other property that might contain multiple values
users can select one or multiple values from a predefined list (eg Sales and/or Finance)
if multiple values are to be applied, separate them with a pipe (|) character. eg: maritime | terrestrial | spacial. See the example in the Migration Template.
any values are accepted (text, date, number etc)
(Text)
Short notes and other unstructured information about an asset
text only values are accepted
(Longtext)
Detailed information about an asset
text only values are accepted
(Date)
Launch dates or other useful time-based information about an asset
use this datetime formatting: 2026-01-01T23:59:00+01:00 (see "expires_at" section above for more info)
(Number)
Version, measurements, and other numerical values
Please not that only umber values are accepted, and any information containing special characters (for instance hyphens, periods, or other symbols) should be imported as a textfield
More help articles about Asset Migrations:

