Skip to main content
Avoid the most common Signal file upload errors, most of which come from formatting automatically applied by spreadsheet software.
When you upload Signal insights or Marketing Data values to your Invoca account using file upload features, sometimes it takes extra effort to format your data correctly — often due to formatting edits made automatically by your spreadsheet software. Here are a few practices to help you avoid formatting errors.

Remove external formatting in your spreadsheets

Before saving your spreadsheet, select all cells and use the “remove formatting” option in your spreadsheet program.

Timestamp formats

The following formats are supported for both call_start_time and occurred_at_time. All examples below correspond to a date and time of April 11, 2016 at 1 PM Pacific Time. The file upload interface includes a timezone dropdown that lets you select which timezone this format is parsed in. Use this format for Excel date cells: yyyy/mm/dd hh:mm:ss.000 AM/PM.

Other fields

  • calling_phone_number: format as ANI in E.164 format (+country national_number) — for example, +18885551212.
  • advertiser_id_from_network and advertiser_campaign_id_from_network: these columns are only used to restrict Signal insights to calls from certain partners or campaigns. In most cases, you can leave them blank.

Blank cells and rows without Signal values

  • Blank cells: Invoca skips blank cells. A blank Signal cell leaves that Signal unchanged on the call, and a blank Marketing Data cell keeps the field’s existing value. Cells that contain only spaces or tabs count as blank.
  • Rows with only Marketing Data values: a row that has a matching identifier and Marketing Data values but no Signal values is accepted. Invoca applies the Marketing Data values to the matched call. Each Marketing Data column header must be the exact Partner (API) Name of the field.
  • Rows with no values to apply: each row needs at least one Signal or Marketing Data value in addition to its matching identifier. If every other cell in the row is blank, the row fails with the error “There was an error processing this row: no signal values were provided for this row.”

Bundled calls

If reporting a Signal on a bundled campaign using transaction_id as the matching identifier, we recommend reporting on the final/destination campaign. If reporting a Signal on a call_record_id associated with a bundled call, the Signal applies to the last call leg associated with the child campaign in the organization reporting the Signal — this allows payouts to propagate appropriately. If transaction_id or call_record_id aren’t available, matching is still possible using call_start_time with an additional optional parameter, such as call duration or calling phone number.
Last modified on November 2, 2026