Skip to main content

Override your forecast with a CSV import

Learn how to upload a CSV to override your Intercom forecast, including how to format your file, export an existing forecast, and delete overrides.

Written by Dawn Perrott

Your forecast is built automatically from your team's live conversation history, with volume Fin handles on its own filtered out. When you know something the forecast doesn't e.g. an upcoming campaign, an expected seasonal spike, you can override it by uploading a comma-separated values (CSV) file.

Notes:

  • CSV import is the only way to bring your own numbers into the forecast today (there's no API import currently).

  • Each override applies only to the hours in your file; it doesn't change how Intercom calculates future forecasts.

  • Overrides are applied whenever your forecast is calculated, so they always reflect your latest numbers. There's nothing stored separately that can fall out of sync.

  • Workforce Management is included in the Pro add-on.

If you're forecasting today in Excel or Google Sheets, you can adapt the format of your existing forecast so you can import it as a CSV. That means you'll be able to see the numbers you already trust in the Intercom forecast. You can then see the resulting staffing calculations and build your team schedule from this reference.


How to import a CSV of forecast overrides

  1. Click Import forecast in the top-right of the page header.

  2. In the Import forecast dialog, drag and drop your .csv file, or click to browse and select it.

  3. Click Import.

    The Import forecast dialog on the Forecast page, with a prompt to upload a .csv file of forecast overrides (5,000 row limit), a link to download an example, and an Add file button to drag and drop or browse for a file.

Once the import finishes, you'll see a toast confirming how many overrides were imported (for example, "Imported 12 forecast overrides."), and the Forecast page switches to the date range, workstreams and channels you imported so you can check the result.

Note: Rows are validated together. If any rows in your file have errors, the file import will fail. You'll need to fix any errors and re-upload.


How to format your CSV correctly

Your file needs exactly these six column headers, in any order (headers are case-insensitive and extra spaces are trimmed):

Column

What to enter

workstream

The exact name of an existing workstream

channel

One of Email, Chat, Android App or iOS App (spelled exactly like this, including capitalization)

timezone

An Internet Assigned Numbers Authority (IANA) timezone with a whole-hour offset, e.g. America/New_York, Europe/London

start

Start of the override, formatted MM/dd/yyyy HH:mm, e.g. 01/20/2025 09:00

end

End of the override, same format as start

conversations_per_hour

The conversation volume to set for that hour: a number that's zero or higher. Decimals are allowed.

Use 0 to indicate you expect no volume at all, for example on a day you're closed.

Not sure what your file should look like? In the Import forecast dialog, click download an example for a ready-made template. The example uses past dates, so change them to future dates before you import it.

Validation rules

Important: Every row must follow these rules, or the import fails and nothing is imported:

  • start and end must land exactly on the hour (minutes must be 00).

  • end must be after start.

  • start must be in the future - you can't backdate an override.

  • timezone must have a whole-hour offset. Zones like Asia/Kolkata or Asia/Kathmandu (which use a 30- or 45-minute offset) aren't currently supported. If you leave timezone blank, it defaults to UTC rather than failing.

  • Each row sets its own timezone. There's currently no single timezone setting for the whole file.

  • If an imported row overlaps an existing override for the same workstream and channel, the existing override is deleted and replaced. This includes the hours of the existing override that your row doesn't cover.

If your file is missing a required column, is over 10MB, isn't a .csv, or has no data rows at all, the whole import is rejected before any rows are processed - you'll see a message telling you exactly what's wrong (for example, "Missing required columns: …").

Each file can contain up to 5,000 rows. If your forecast is larger, split it into smaller files and import them one at a time.

Note: conversations_per_hour sets an exact value for that hour — it doesn't apply a percentage on top of the existing forecast. If you want to apply a growth rate (for example, +10%), export the current forecast first, calculate your adjusted numbers in the spreadsheet, then re-import.


How to export your current forecast as a starting point

You can also export your existing forecast as a CSV — useful as an editing template, since it's in the same format the importer expects.

  1. Go to Workforce > Forecast and set the workstreams, channels and date range you want to export. The date range can be up to 31 days.

  2. Select the Volume tab, click Export forecast, check the summary, then click Export CSV.

Note: Export isn't available if your date range is longer than 31 days, if your timezone doesn't use a whole-hour offset, or if there's no forecast data to export yet. The CSV is exported in the timezone shown on the page. If an export has more than 5,000 rows, the confirmation warns that you can't re-import it in a single file.


How to delete all forecast overrides

Click Import forecast, open the ⋯ (Options) menu at the bottom left of the dialog and select Delete existing imports. The menu item shows how many overrides exist, for example "Delete existing imports (12)", and is unavailable when there are none. Click Delete all to confirm.

Important: This deletes every forecast override at once and can't be undone.


FAQ

What happens if some rows in my forecast override CSV have errors?

Rows are validated together. If any rows have errors, the file import will fail. Fix the errors in your file and re-upload.

Why is my forecast override CSV rejected before any rows are processed?

If your file is missing a required column, is over 10MB, isn't a .csv, or has no data rows at all, the whole import is rejected before any rows are processed. You'll see a message telling you exactly what's wrong. For example, "Missing required columns: …".

Is there a row limit for forecast override CSV imports?

Yes. Each import can contain up to 5,000 rows. If your forecast is larger, split it into several files.

Can I import forecast overrides via API?

Not yet. CSV import is currently the only way to bring your own numbers into the forecast.

Does conversations_per_hour add to the existing forecast or replace it?

It replaces it. conversations_per_hour sets an exact value for that hour - it doesn't apply a percentage on top of the existing forecast.

How do I apply a growth rate to my forecast override — for example, +10%?

Export the current forecast first, calculate your adjusted numbers in the spreadsheet, then re-import.

Why isn't my timezone being accepted in my forecast override CSV?

The timezone column requires an IANA timezone with a whole-hour offset. Zones like Asia/Kolkata and Asia/Kathmandu (which use a 30- or 45-minute offset) aren't supported. If you leave timezone blank, it defaults to UTC rather than failing.

What date and time format do start and end need to use in a forecast override CSV?

Both must be formatted as MM/dd/yyyy HH:mm — for example, 01/20/2025 09:00. They must also land exactly on the hour; minutes must be 00.

Where can I get an example forecast override CSV template?

In the Import forecast dialog, click download an example for a ready-made template. The example uses past dates, so change them to future dates before you import it.

Why can't I export my current forecast?

Export isn't available if your date range is longer than 31 days, if your timezone doesn't use a whole-hour offset, or if there's no forecast data to export yet.

Can I undo deleting all forecast overrides?

No. Deleting forecast overrides removes all of them at once and can't be undone.

Can I backdate a forecast override?

No - the start must be in the future. You can't backdate an override.


💡Tip

Need more help? Get support from our Community Forum
Find answers and get help from Intercom Support and Community Experts


Did this answer your question?