Benchling supports printing labels for any box, plate, container, or registered entity you track. There are three components to this:

  • The inventory item (box, plate, container) or registered entity that you want to print a label for. This is where the information printed on the label will be taken from.

  • The label template. This defines how the label will look, and where data will be displayed on the label.

  • The printer. This is where the label will be physically printed.

Set up label templates in Benchling

You can upload ZPL (Zebra Programming Language) label templates into Benchling, which will allow you to print labels with information about items in Benchling.

Benchling does not provide a label designer for you to use. Instead, it allows you to upload ZPL label templates, which you can design using a number of label design programs. Zebra Designer is free and provided by Zebra, but any software that can produce ZPL should work. When designing your labels, you can use keywords that Benchling will recognize to pull in data related to the item on to the label.

Keywords are all formatted as benchling.<item type>.<property> (e.g. benchling.container.barcode or benchling.entity.barcode). Below is a table of what properties we support for what items:

Note on entities: The "barcode" for a registered entity is its registry ID.

Note on batches: Some containers contain multiple batches. Any entity property, any batch property, or the concentration property will use the data on the first batch in a container.

Once you have ZPL for your label, you can upload that into Benchling. Go to the “Label Templates” section in your registry settings and click “Create”. You will be prompted to enter a name for your label template, as well as the ZPL to use.

Example: Create a label

Let's assume we want to create a label for a container with a cell line in Benchling. An example container is shown below:

We start by creating a label with a label design program (the screenshots below will assume you're using Zebra Designer). When using Zebra Designer, you'll need to have at least one label printer installed on the computer that you're using. The first time you start it, you should be walked through adding a printer.

After creating a new label, you'll be able to add barcodes and text. To add a barcode, select the “Bar Code” component from the left bar, click where on the label you would like it to appear, and use benchling.container.barcode as the fixed text data.

2D barcodes are also available:

If you would like to add text to a label (for instance, the name of the first entity in the container), you can select the “Text” object in the panel to the left. Be sure that the “Font” is set to a Zebra font; if it's something else, the ZPL generated will not contain the exact text that you input, and Benchling will be unable to understand it.

The below is an example of a label with several fields filled in. Any field on the entity, batch, or container can just have benchling.<batch/container>.<field name>, and Benchling will find a match if available. Spaces and symbols are both fine.

Note on schema field properties: The property value for an entity schema field is the "Name" of the schema field (spaces included). Not the warehouse name (which has underscores). In this example, "benchling.entity.Cell Type" is correct; "benchling.entity.cell_type" is incorrect.

Once you have finished your label, you will need to export it as ZPL. To do this, select “Print preview”...

...and check the “Print to file” box

This will create a .prn file. The text of that file is the ZPL for your label template. Next copy and paste this into a code-friendly text editor (e.g. Sublime). Finally copy and paste this into the Benchling label template creator.

Did this answer your question?