How to Print Labels from Google Sheets
Google Sheets is where many people keep their address lists, inventory data, and mailing lists. But Google Sheets doesn't have a built-in way to print labels — you either need a paid Workspace add-on or a workaround. printshi offers a simpler solution: export your sheet as CSV, import it, and print labels in minutes.
This approach works for any kind of label: mailing labels, return address labels, name tags, product labels, or shipping labels. If your data is in a spreadsheet, you can turn it into printed labels without installing anything, signing up for anything, or paying for anything.
Step 1: Prepare Your Google Sheet
The quality of your labels depends on the quality of your data. Before exporting, take a few minutes to clean up your spreadsheet. A well-organized sheet produces perfect labels on the first try; a messy sheet leads to formatting problems and wasted label stock.
- One row per label. Each row in your spreadsheet becomes one label. If you have a row with two addresses crammed into one cell, split them into separate rows.
- Clear column headers. Use descriptive headers in the first row: Name, Address, City, State, ZIP. printshi uses these headers during column mapping, so clear names save time.
- Consistent formatting. Make sure all state abbreviations are the same format (either "CA" or "California," not a mix). Make sure ZIP codes are all 5 digits or all ZIP+4. Consistency ensures your labels look uniform.
- No blank rows. Delete any empty rows in the middle of your data. Blank rows create blank labels, which waste label stock. Blank rows at the bottom of your data are fine — they'll be ignored.
- Format ZIP codes as text. This is the most common gotcha. Google Sheets treats ZIP codes as numbers by default, which strips leading zeros. ZIP code 01234 becomes 1234. To fix this: select the ZIP column, go to Format > Number > Plain text. Do this before entering data if possible. If your ZIPs are already truncated, you'll need to re-enter the ones with leading zeros.
Step 2: Export as CSV
Once your data is clean, export it as a CSV (comma-separated values) file. CSV is a universal format that any label tool can read.
- Open your Google Sheet in a browser.
- Go to File > Download > Comma Separated Values (.csv).
- The file downloads automatically to your Downloads folder.
If your spreadsheet has multiple tabs, Google Sheets exports only the active tab. Make sure you're on the correct tab before downloading. If you need data from multiple tabs, either combine them into one tab first or export each tab separately.
The exported CSV file is a plain text file. You can open it in any text editor to verify the data looks correct, but this isn't necessary — printshi will show you a preview during import.
Step 3: Import into printshi
Now bring your data into printshi and turn it into labels.
- Open the printshi editor. No account needed — go directly to the editor in your browser.
- Select your label size. Choose from preset sizes like Avery 5160 (30 labels per sheet), Avery 5163 (10 labels per sheet), 4x6 shipping labels, or set a custom size. The label size determines how many labels fit on each printed page.
- Click CSV Import. The import dialog opens. Upload your CSV file or drag and drop it.
- Map your columns. printshi detects your column headers and asks you to map them to label fields. Map "Name" to the name field, "Address" to the address line, and so on. If your columns are already named clearly, printshi may auto-detect the mapping.
- Generate labels. Click generate and printshi creates one label for each row in your spreadsheet. Labels are arranged on sheets according to your selected template — for example, 30 labels per page on Avery 5160 sheets.
Step 4: Preview and Print
Before printing on expensive label stock, always preview and test.
- Check the first and last labels. Scroll through the preview to make sure the first label, a few labels in the middle, and the last label all look correct. Common issues: truncated text (label too small for the content), wrong column mapping (city and state swapped), or missing data (blank fields from empty cells).
- Verify formatting. Make sure names aren't cut off, addresses fit within the label boundaries, and ZIP codes have the correct number of digits. If text is too large, reduce the font size in the editor.
- Print a test on plain paper. Load a sheet of plain paper into your printer and print the first page. Hold the printed page up against a label sheet (with a light behind them) to check alignment. This costs a penny instead of wasting a dollar's worth of labels.
- Print on label sheets at 100% scale. When everything looks right, load your label sheets and print. In the print dialog, set scaling to 100% (actual size). Set margins to "None" or "Minimum." Do not select "Fit to page" — this resizes the layout and shifts labels off the grid.
printshi vs Google Workspace Label Add-ons
Several Google Workspace add-ons claim to print labels directly from Google Sheets. Here's how they compare to the printshi approach:
| Feature | printshi | Avery for Google Docs | Labelmaker Add-on |
|---|---|---|---|
| Cost | Free | Free tier (limited) | $30/year |
| Signup required | No | Yes | Yes |
| Works offline | Yes | No | No |
| Custom fonts | 25+ | Limited | Limited |
| Avery templates | Yes | Yes | Yes |
The main advantage of printshi is simplicity. There's no add-on to install, no permissions to grant, no account to create, and no recurring cost. The CSV export step takes 5 seconds and gives you a local copy of your data that works with any tool — not just one locked into the Google ecosystem.
Tips for Google Sheets Address Lists
If you maintain an ongoing address list in Google Sheets (for holiday cards, business mailings, or customer databases), these tips will save you headaches every time you print labels:
- Format ZIP codes as text to preserve leading zeros. Select the entire ZIP column, go to Format > Number > Plain text. Do this before entering any data. States in the northeast (CT, MA, ME, NH, NJ, NY, PR, RI, VT, VI) all have ZIP codes starting with 0.
- Use separate columns for each address component. Don't combine "City, State ZIP" into one column. Keep City, State, and ZIP in separate columns. This gives you maximum flexibility when designing labels — you can format and position each component independently.
- Remove duplicates. Go to Data > Data cleanup > Remove duplicates. Select all address columns and let Google Sheets find and remove duplicate rows. This prevents printing the same label twice.
- Add a "Last Updated" column. Track when each address was last verified. Addresses go stale — people move, businesses close. A date column helps you identify which addresses might need verification before a big mailing.
- Use data validation for state abbreviations. Go to Data > Data validation and set the State column to accept only valid 2-letter state abbreviations. This prevents typos like "CA" vs "Ca" vs "California" from creating inconsistent labels.
Frequently Asked Questions
- Can I print labels directly from Google Sheets?
- Not directly. Export your sheet as CSV (File > Download > CSV), then import the CSV into printshi to print labels.
- Do I need a Google Workspace add-on for labels?
- No. printshi is free and doesn't require any add-ons. Just export your data as CSV and import it.
- How do I keep leading zeros in ZIP codes?
- In Google Sheets, format the ZIP column as Plain Text (Format > Number > Plain text) before entering data.
- Can I print Avery labels from Google Sheets?
- Yes. Export your Google Sheet as CSV, import into printshi, select your Avery template, and print.
- How many labels can I print from one spreadsheet?
- There's no limit. printshi handles hundreds or thousands of rows from a single CSV file.