How-to

How to send 200 contracts at once from an Excel sheet

Sending one contract is easy. Sending two hundred, each with the right name, price and start date, is where a typo in row 143 turns into an awkward phone call. The sending itself takes minutes with bulk send; the work is in the spreadsheet and in a quick test before the real batch. Here's the checklist we'd follow for a big one.

Updated November 5, 2026 · 3 min read

On this page
  1. Clean the spreadsheet first
  2. Match the template to the sheet
  3. Save as CSV and send
  4. While the batch goes out
  5. Questions

Clean the spreadsheet first

  • One row per contract, one header row, no merged cells, no totals or notes under the data.
  • Find duplicate emails with Conditional Formatting's Highlight Duplicate Values. Two rows with one address means one person gets two contracts.
  • Strip stray spaces from names and emails with the TRIM function, then paste the results back as values.
  • Format values the way they should print. A CSV keeps what the cell shows, so format prices as currency and dates as you want them written, like November 5, 2026, before you save.
  • Protect leading zeros. ZIP codes and account numbers that start with 0 need a Text format, or Excel drops the zero.

Match the template to the sheet

Bulk send fills each contract from a template. Every detail that changes per row needs a labeled text box in that template, drawn with the Markup Text tool, and its label is the column name the spreadsheet uses. The quickest way to line them up is to start from the template's own file: on the template's page, click Bulk send, then Download a blank CSV. It has the signer's name and email columns, then a column for every labeled box. Paste your cleaned data into it.

Save as CSV and send

  1. 1

    Save a CSV copy

    In Excel, choose Save As (or Save a Copy) and pick CSV UTF-8 (Comma delimited). The UTF-8 version keeps accents like José intact. SignMaster won't take the .xlsx workbook itself.

  2. 2

    Run a two-row test

    Make a copy of the CSV with just two rows, change their emails to addresses you control, and send that first. Open both contracts and read them as a signer would: names, prices and dates in the right places.

  3. 3

    Upload the full file

    Start a new bulk send from the template and upload the full CSV on Add people. On Match columns, check that every column points at the right box or role; anything unused can be set to Not used.

  4. 4

    Read the Check rows report

    Check rows lists every row as Ready, Check or Skipped, with the reason. Rows with a bad email or a value too long for its box are skipped and stay on the batch to fix later, so the rest aren't held up.

  5. 5

    Set the options and send

    Give the batch a name only your team sees, switch on Add name so each envelope's title includes the signer's name, set a Sign by date, and keep reminders at their default of every three days. Then click the send button.

How many rows go in one send depends on your plan: up to 250 on Solo, 500 on Crew and 1000 on Company. If your list is longer than your plan allows, split it into two files and send them one after the other. Each row is its own envelope, and paid plans don't limit envelopes, so a big batch costs nothing extra.

While the batch goes out

SignMaster sends at a steady pace rather than all at once, and the batch page shows each row as waiting, sending, sent, failed or skipped. Spot a mistake early? Click Stop, and nothing more goes out until you choose Resume. A failed row has a Fix button: correct the email or value and choose Save and send. When everything's out, Results CSV gives you every row with its envelope's status, which is the list your team works from to chase the stragglers.

Questions? Answers.

Can I upload an Excel file directly?

No, save it as a CSV first. If you pick an .xlsx file, SignMaster says so and asks for a CSV. You can also copy the rows, header included, and paste them in.

Will every signer see the other 199 contracts?

No. Each row becomes its own envelope with a private link, and each person sees only their own contract and their own details.

My dates came out as numbers like 46331. Why?

Excel stores dates as serial numbers, and a cell formatted as General shows that number. Format the date column as a date in the style you want printed, then save the CSV again.

Can I send to two signers per row, like a tenant and a guarantor?

Yes, if the template has both roles. The blank CSV then has a name and email column for each role, and you choose whether they sign one at a time or all at once.

Your next contract,
signed today.

Start free in any browser and send your first document.