Using the Variables panel in Illustrator, you can easily create multiple variations of your artwork by merging a data source file (CSV or XML file) with an Illustrator document. For example, instead of manually modifying objects in a template, use the data merge functionality to produce hundreds of template variations for different output surfaces quickly and accurately. Similarly, you can change the names of participants on event badges, or vary images across web banners and postcards, without having to redo your artwork. Simply create one design and then quickly produce variations by importing the names or the images from a data source file.

All you need for data merge is a data source file and a target document.
- The data source file contains the information that varies in each iteration of the target document, such as the names, photographs, and addresses of the recipients of a form letter. A data source file can be a comma-delimited file (.csv) or an extensible markup language file (.xml).
- The target document is an Illustrator document that contains the base artwork to use as the template. This document can contain the data-field placeholder and the items that remain the same in each iteration of the merged document.
Data merge is accessible from the Variables panel in Illustrator (Window > Variables). The type and name of each variable in the document are listed in the panel. If the variable is bound to an object, then the Objects column displays the name of the bound object as it appears in the Layers panel. You can sort the rows by clicking items in the header bar: by variable name, object name, or by variable type.

A. Data set B. Panel menu C. Switch between data sets D. Name of bound object E. Variable name F. Variable type G. Lock variables H. Make object dynamic I. Make visibility dynamic J. Unbind variables K. Create variables L. Delete variables
-
Set up your source data file in CSV or XML format. For more information, see Prepare a data source file.
-
Import a data source file in Illustrator using the Variables panel. For more information, see Import a data source file.
-
Bind a variable to an object in your template. For more information, see Bind variables to objects.
-
Preview the document with each data set before you export all the files. For more information, see Preview the document with each data set.
-
Export a batch of files from the data using the Actions panel in Illustrator. For more information, see Export files using the Actions panel.
Data source files should be saved in a comma-delimited (.csv) or Extensible Markup Language (.xml) format.
In a comma-delimited (.csv) file, records are separated by paragraph breaks; fields are separated by commas or tabs. The data source file can also include text or paths that see images on disk. Before importing a CSV file, do the following to let Illustrator identify the variable type.
-
Specify your data field name in the first row of your spreadsheet. Then, do the following:
- At the beginning of the data field name, type an “at” symbol (@) to insert text or paths that refer to image files. The @ symbol is required only in the first line; subsequent lines should include the image paths.
- Similarly, at the beginning of the data field name, type a “percentage” symbol (%) for graphs and a "hashtag" symbol (#) for visibility.
Note:
- The data field names in your spreadsheet should not contain blank spaces. For example, you can specify the data field as Company_Name instead of Company Name.
- Similarly, the paths referring to image and graph files should not contain any blank spaces. For example, the path of an image file should be C:\Photos\BillTucker instead of C:\Photos\Bill Tucker.
- All graph files linked from your data source file should be saved as comma-delimited (.csv) files.
- If you get an error message when you type the @ symbol at the beginning of the field, type an apostrophe (') before the @ symbol (such as '@Photos) to validate the function. Some applications, such as Microsoft Excel, reserve the @ symbol for functions.
-
Do one of the following:
- Save spreadsheets created using the latest version of Microsoft Excel (2016 release) to the following file formats:
- CSV (Comma delimited) (*.csv)
- CSV (MS-DOS) (*.csv)
- Save spreadsheets created using Apple Numbers to CSV format with Unicode (UTF-8) encoding.
Note:
Currently, CSV files exported in the formats mentioned above are supported in Illustrator. Other CSV file formats such as Macintosh Comma Separated (.csv) are not supported for data merge.
- Save spreadsheets created using the latest version of Microsoft Excel (2016 release) to the following file formats:
To bind variables to the desired data, import a data source in the Variables panel. You can have only one data source file selected per document.
-
(Optional) You can edit, rename, or delete the data set later by first choosing it from the
Data Set drop‑down menu and editing its options.- To switch between data sets, select a data set from the Data
Set list in the Variables panel. Alternatively, click the Previous Data Set button () or the Next Data Set button (
).
- To apply the data on the artboard to the current data set, choose Update
Data Set from the Variables panel menu.
- To rename a data set, edit the text directly in the
Data Set text box. Alternatively, double-click the words Data Set (to the left of theData Set text box), enter a newname, and click OK.
- To delete a data set, click the Delete icon. Alternatively, choose Delete Data Set from the Variables panel menu.
- To switch between data sets, select a data set from the Data
Use variables to define the elements in a template that you want to change. You can define four types of variables: Visibility variable, Text String variable, Linked File variable, and Graph Data variable. A variable’s type indicates which object attributes are changeable (dynamic). The type and name of each variable in the document are listed in the panel. If the variable is bound to an object, then the Objects column displays the name of the bound object as it appears in the Layers panel.
Type of variable | Icon to indicate a variable’s type |
Definition |
Visibility variables | ![]() |
Show or hide artwork. |
Text String variables | ![]() |
Replace a string of text. |
Linked File variables | ![]() |
Replace the object in the artboard with an object from another file. |
Graph Data variables | ![]() |
Replace the values in a graph. |
No Type (unbound) variable | ![]() |
Not bound to any object. |
You can edit a variable’s name or type, unbind a variable, and lock a variable using the Variables panel.
Unbinding a variable breaks the link between the variable and its object. Locking variables prevents you from creating variables, deleting variables, and editing variable options. However, you can bind and unbind objects to locked variables.
Deleting a variable removes it from the Variables panel. If you delete a variable that is bound to an object, the object becomes static (unless the object is also bound to a variable of a different type).
You can change the data associated with a variable by editing the object to which it is bound. For example, if you’re working with a Visibility variable, you change the object’s state of visibility in the Layers panel. Editing dynamic objects
The Variables panel displays the names of dynamic objects as they appear in the Layers panel. If you save the template in SVG format for use with other Adobe products, these object names must conform to XML naming conventions. For example, XML names must begin with a letter, underscore, or colon, and cannot contain spaces.
Illustrator automatically assigns a valid XML ID to every dynamic object you create. To view, edit, and export object names using XML IDs, choose Edit > Preferences > Units (Windows) or Illustrator > Preferences > Units (Mac OS), and select XML ID.
To see how your final graphics will look, you can preview before you export all the files. Use the arrow keys next to Data Set in the Variables panel to navigate and preview the desired data set in your document.
After you define variables and one or more data sets, you can output, in batch mode, artwork using the data set values. Do the following:
-
Using the Actions panel (Window > Actions), record an action to save your document in the desired format. For details, see Automation with actions.
-
For Destination, specify what you want to do with the processed files. You can leave the files open without saving the changes (None), save and close the file in their current location (Save And Close), or save the files to a different location (Folder).
Depending on the Destination option you select, you can set additional options for saving the files. For more information, see Play an action on a batch of files.
When you define variables in an Illustrator document, you are creating a template for data merge. You can save the template in SVG format for use with other Adobe products, such as Adobe® Graphics Server. For example, a developer working with Adobe Graphics Server can bind the variables in the SVG file directly to a database or another data source.
If you’re receiving the error: The incoming variable library is invalid while uploading a CSV data source file, check for the following:
- Your CSV file is not blank.
- The spreadsheets that you've created using the latest version of Microsoft Excel are saved as CSV (Comma delimited) (*.csv) or CSV (MS-DOS) (*.csv) and those created using Apple Numbers are saved as CSV format with Unicode (UTF-8) encoding. Data source files saved in any other file format such as Macintosh Comma Separated (*.csv) are not supported for data merge.
- All columns have a data field name. For example, Illustrator displays the error message when a column in your data source file contains data but doesn't have a data field name.
- The data source file doesn't have a blank column in between any filled columns. For example, Illustrator displays the error message when column B and D in your data source file contain data but column C is empty.

A. Data field name is missing for a column B. There's a blank column between filled columns