Cellbrook

Google Sheets guide · Labels

How to print address labels from Google Contacts

To print address labels from Google Contacts, export your contacts as a CSV file and import it into Google Sheets. Check the names, addresses and postal codes, then make a Google Docs table by hand or use our LabelRows add-on to create a label document. Here’s how to prepare the list and test the finished labels.

Add LabelRows to Google SheetsFree to install from the Google Workspace Marketplace

Updated · 15 min read · By the Cellbrook team

The short answer

To print labels from Google Contacts, export the contacts you need as a CSV file, import that file into Google Sheets and check the address columns. Then make mailing labels from Google Contacts in one of two ways: use our LabelRows add-on to create a Google Doc from the sheet, or copy the address text into a Google Docs table that you size yourself.

As far as we know, Google Contacts has no built-in label printing, but check in your account. The export is a copy, so corrections you make in the sheet do not automatically correct the original contact. Check the final addresses before printing, particularly missing street addresses and postal codes with leading zeros.

The free Docs table is a sensible choice for a short, one-off list if you are comfortable setting up the grid and pasting addresses. LabelRows is useful when you want it to lay out the rows for a supported size or choose rows with a checkbox. Its free plan includes up to 60 labels per document. It produces text-only labels, so it is not the right tool if you need an image or logo on each label.

Export your contacts

Open Google Contacts and decide which recipients belong in this mailing. You can choose individual contacts or a contact label or group before using Export. Check the choices in your account so the export contains the intended people. If you are unsure, inspect the resulting file after import rather than assuming that every contact belongs in the batch.

Choose Google CSV as the export format and save the file somewhere you can find it for the next step. Outlook CSV also works as a source for the sheet, but column names may be different. Check your file’s headers before following the examples below. The examples describe a possible arrangement, not a promise that your export will use those exact names or columns.

Exporting a smaller selection can make the first review easier. You can also export a broader list and choose recipients in the sheet, which is useful if you want to keep a single working list for a mailing. Either way, confirm that the people you expect are present and that the file contains the address information you need.

The CSV is a separate copy of personal contact information. Keep track of where you saved it and delete it when you no longer need it. If you later change a contact in Google Contacts, make the corresponding change in your working sheet or prepare a fresh export and check it again.

Import the CSV into Google Sheets

  1. Open a Google Sheet and choose File → Import. Select Upload and choose the CSV you exported.
  2. Choose the option to insert a new sheet. Check the import dialog for an option that converts text to numbers, and avoid converting postal codes when you need to preserve leading zeros. Check the choices available in your account.
  3. After import, inspect the header row and several contact rows. Look for names, street addresses, city, region or state, postal code and country. Your headers and their order may differ from the examples here.
  4. Check postal codes immediately. If 02108 has become 2108, select the postal code column, choose Format → Number → Plain text and re-enter the complete code from a reliable source.

Formatting a cell as plain text after a zero is lost does not restore the missing digit. Correct the value itself, then inspect other affected rows. Postal codes are identifiers on an address, so their appearance matters even when they contain only digits.

Keep the header row intact. LabelRows uses column headers as field names, and clear headers also make the manual method easier to follow. The export has one row per contact; scan across a few rows before editing so you know which address fields belong together and where a second address, if present, appears.

Tidy the names and addresses

Look for columns with names such as Street, City, Region or State, Postal Code and Country. These are examples: check your own headers. A complete mailing address depends on the recipient and destination, so review the fields together rather than assuming that a populated name means the address is ready to print.

If the first and last names are separate, you can make a single name column. For this example only, suppose First Name is in column A, Last Name is in column B and the first contact is on row 2. Add a header such as Full name to an empty column, enter this formula in row 2 and fill it down:

=TRIM(A2&" "&B2)

For a row containing Ana in A2 and Lee in B2, the result is Ana Lee. If one name cell is empty, TRIM removes the extra space. Replace A and B with the actual columns in your sheet. Check the resulting names, including contacts whose preferred mailing name differs from the separate fields.

For a manual Docs table, you can also prepare one cell of label text per contact. Suppose Full name, street, city, state and postal code are in columns A through E, respectively. In an empty column, enter the following on row 2 and fill it down:

=IF(A2="", "", TEXTJOIN(CHAR(10), TRUE, A2, B2, TEXTJOIN(" ", TRUE, TEXTJOIN(", ", TRUE, C2, D2), E2)))

The IF leaves the result empty when the name is blank. CHAR(10) separates the name, street and final address line. The nested TEXTJOIN functions join the city, state and postal code without adding a comma for a missing city. For example, Ana Lee, 12 Pine St, Boston, MA and 02108 produce three lines ending in Boston, MA 02108. Adjust every reference to match your sheet.

This formula does not decide whether an address is complete. A named contact with an empty street can still produce label text, so inspect the source fields and leave incomplete entries out until you have corrected them. Add a country or another address line where the destination needs it, and check the order for that address. If an address needs splitting before you can review it, see our guide to splitting addresses into columns.

A contact may have both home and work details. Use one set of address columns for each label and decide which address is appropriate before you build the text. If you need two separate labels for one person, prepare a separate row for each address and verify both rows. Do not combine a street from one address with the city or postal code from another.

Choose which contacts to print

Remove contacts with no usable address from this print run, rather than letting a name-only label use a position on the sheet. A checkbox column gives you a visible way to review the decision: add a header such as Print, select its cells and choose Insert → Checkbox. Tick the rows that have the address you want to use.

For LabelRows, choose this column under Only rows ticked in. For the manual method, filter the sheet and copy only the intended label text. Review the names and addresses after filtering, especially if you have made corrections since ticking the boxes. The selected-rows guide explains how to prepare a partial list.

You can instead choose a row range or select rows on the sheet before creating labels with LabelRows. A range uses the row numbers shown in the sheet, so check its first and last rows carefully. A checkbox is useful when the people you want are scattered through the list. Check for duplicate recipients as well, but keep separate entries when they represent different intended labels.

Make labels with LabelRows

LabelRows reads rows from the spreadsheet in which it is open and makes a new Google Doc in your Drive. Its free address and shipping sizes include US Letter layouts compatible with Avery 5160 and 5163, and A4 layouts compatible with Avery L7160 and L7163. Check the product code and paper size on your box before choosing. The free plan allows up to 60 labels per document.

  1. Install and open the add-on. Install LabelRows from its Google Workspace Marketplace page. Open the spreadsheet and click the orange tag icon in the right side panel. If the panel is hidden, use the small arrow at the bottom right to show it.
  2. Authorize access. Click Authorize access and allow the two requested permissions. The documentation describes the spreadsheet and Drive permissions.
  3. Choose the source and size. Pick the imported sheet, its header row and the label size that matches your stock. For example, 5160 is a Letter sheet with 30 labels; L7160 is an A4 sheet with 21. They are different layouts.
  4. Set the label text. Click Suggest from headers for a starting point, or write fields matching your actual headers, such as {{Full name}} and {{Street}}. The available names appear under the text box. Arrange the fields in the address order you need and click Update preview.
  5. Choose the recipients. Use all rows, a range or selected rows, or choose your checkbox column under Only rows ticked in. For selected rows, select them on the sheet before creating the labels.
  6. Create and inspect the Doc. Choose the text style and alignment, then click Create labels. Click Open label Doc and check the names, addresses and page layout before printing.

Each field must match a header on the chosen sheet. LabelRows uses the value as shown in the cell and leaves out a line whose fields are all empty. Preview a contact with an optional address line and one without it. If the text has more lines than fit, LabelRows shortens it and reports how many labels were affected. Use a smaller font or revise the affected text, create the Doc again and check that the address is complete.

For more than 60 labels, create separate documents using ranges that cover the intended rows. For example, rows 2 to 61 and 62 to 121 cover consecutive data rows when row 1 contains headers. Check the ranges against your own sheet and inspect each Doc. Other sizes are Pro: Pro is coming soon and is not on sale yet, and Pro sizes cannot create label Docs yet. Their test pages work.

Free: make a Google Docs table

The Google Docs table method needs no add-on. It works well for a small batch when you can check each address and are prepared to size the table to the label stock. Start with the joined label-text column above, or prepare another arrangement that suits your addresses. Make sure missing fields have not left misleading punctuation or an incomplete delivery address.

  1. Prepare the list. Select the recipients you want and check the finished label text in Sheets. Include an address with an optional second line and a longer address in your review.
  2. Set up the document. In a blank Google Doc, use File → Page setup and choose the paper size and margins for your stock. Use the measurements on the label box or its manufacturer template.
  3. Make the grid. Insert a table with positions corresponding to the labels on the sheet. Set the column widths, minimum row heights, padding and border using the table controls available in your account. Account for any gaps between labels.
  4. Add the addresses. Copy the prepared label text into the matching table positions. Work across the page and check that each intended recipient appears once. For a larger batch, repeat the arrangement for each page.
  5. Inspect and test. Check that long text has not made a table row taller, then print a plain-paper test at 100% or Actual size. Compare it with your label sheet before using adhesive stock.

A table row can grow when a long address wraps or when spacing is too large. That can move the labels below it. Reduce unnecessary spacing or adjust the text size, then check the whole page again. The copied labels are a snapshot: if you edit an address in Sheets, update its text in the Doc too.

For a fuller walkthrough, including a Sheets formula and a way to arrange a 30-label page, see how to print address labels from Google Sheets. Our Avery 5160 guide gives measurements for that particular Letter layout. Use the measurements for your own stock if it is a different size.

Test and print your labels

Before printing mailing labels from Google Contacts onto adhesive sheets, confirm that the document and printer use the paper size for your label stock. Print at 100% or Actual size, with no extra margins. A fit-to-page setting can change the spacing across the page. Check the settings in your account and printer dialog.

LabelRows has a free Test page for every size. It produces numbered, outlined labels in the chosen layout. Print it on plain paper, hold the print against a label sheet in front of a light and check the edges across the whole page. The first label may look right while positions farther down or across do not.

If the whole LabelRows layout is slightly shifted, use Printer alignment. Nudge right and Nudge down accept values from −0.5 to 0.5 inches; negative values move the layout left or up. Print another test after adjusting. If the error grows down the page, check paper size and scale as well as the layout.

Open the finished LabelRows Doc and choose File → Print. For either method, inspect the actual label document as well as the alignment test: a correctly positioned grid cannot fix a missing street or shortened address. Print one sheet and check it before continuing with the rest of the batch.

Handle contact data carefully

Names and addresses are personal data. The export, the imported sheet and each label Doc are separate copies to keep track of. Delete the exported CSV when you no longer need it, and review the sheet and Docs you created when the mailing is finished. LabelRows creates a new Doc each time you click Create labels; older label Docs stay in your Drive until you delete them.

LabelRows reads only the spreadsheet in which it is open and creates the label Doc using access to files it creates. It does not ask for access to your contacts, Gmail, calendar or other Drive files. It makes no web requests of its own, so no data goes to Cellbrook servers. It does not change your spreadsheet. See the permissions documentation for details.

Common problems

A contact has no address on the label. Check the imported row and the headers used in the label text. A field must match the chosen sheet’s header. If the address is missing from the source, leave the row out until you can correct it. A name alone is not enough for a mailing label.

A ZIP code has lost its leading zero. Check the original contact or another reliable source. Format the sheet column as plain text and re-enter the complete code. Check other imported codes too, since changing the format alone cannot recover a digit that is already gone.

Accented characters look wrong. Compare the original contact, the imported cell and the finished Doc to find where the text first differs. Correct the working sheet and create the label document again, or update the manual table. Check the import choices available in your account if the CSV did not import as expected.

One contact has several addresses. Identify the home or work fields you intend to use and keep that set together. For two separate labels, prepare two rows and review both. Check that the label text does not pull a street from one address and a postal code from another.

The labels are not aligned. Match Letter or A4 to the stock, use 100% scale and compare a plain-paper test with the sheet. If the entire LabelRows layout is shifted, try a small printer alignment nudge. In a Docs table, also check measurements, padding and rows expanded by long text.

The wrong contacts appear. Review the selected rows, range or tick column. For the manual method, check which label-text cells you copied. In LabelRows, update the selection and create a new Doc; then inspect that new copy before printing.

Frequently asked questions

Can I print address labels directly from Google Contacts?

As far as we know, Google Contacts has no built-in label printing, but check in your account. You can export contacts as a CSV, import the file into Google Sheets and use either a Google Docs table or LabelRows to make the labels.

Which CSV format should I export from Google Contacts?

Choose Google CSV for the steps in this guide. Outlook CSV also works as a source for a sheet, but its column names may differ. Inspect the headers and use the ones in your own file when you write formulas or label fields.

How do I print labels for only some contacts?

Choose the contacts or a contact label or group when you export. You can also add a checkbox column in the sheet and tick the recipients you want. LabelRows can use that column under Only rows ticked in. For a Docs table, filter the sheet and copy only the intended label text.

How do I keep a ZIP code such as 02108 from losing its first zero?

Check the import dialog for an option to convert text to numbers and check the imported postal codes. If a zero has already disappeared, format the postal code column as plain text and re-enter the complete code. Check the original contact or another reliable source before correcting it.

Can I print both a home and a work address for one contact?

Choose one set of address columns for each label. If you need both addresses on separate labels, prepare separate rows for them in the sheet and check the name and address on each row before creating the document.

Is LabelRows free for Google Contacts mailing labels?

LabelRows Free includes the 5160 and 5163 Letter sizes and the L7160 and L7163 A4 sizes, with up to 60 labels per Google Doc. For a longer list, create separate documents using row ranges. The Google Docs table method also works without the add-on.

Does LabelRows read my Google Contacts?

No. LabelRows reads the spreadsheet in which it is open and creates a label Doc in your Drive. It does not request access to your contacts, and it makes no web requests to Cellbrook servers. The exported CSV and the resulting Docs are separate copies to manage.

Disclosure: we make LabelRows, the Google Sheets add-on mentioned in this guide. The Google Docs table method works without it, using your exported contact list in Google Sheets.

Google Contacts, Google Sheets and Google Docs are trademarks of Google LLC. Avery is a registered trademark of Avery Products Corporation. LabelRows and Cellbrook are not affiliated with or endorsed by Google or Avery.