> For the complete documentation index, see [llms.txt](https://docs.getmesa.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.getmesa.com/connect/google-sheets/common-pitfalls.md).

# Technical Notes

## Header rows

MESA uses the first row of your spreadsheet as the header row. To avoid issues retrieving columns and running workflows, please ensure that your header row:

* **Does not contain duplicates**. If more than one column contains the same column header, then MESA cannot send data over correctly.
* **Does not have missing headers**. If so, MESA cannot retrieve your Sheet's columns. Make sure that each column that should contain information has a header.
* **Does not have line breaks**. If any column header contains a new line character, the variables are unable to be accounted for properly.

## Hidden rows

Before configuring MESA and running workflows, please unhide any hidden rows in your spreadsheet.

## Columns aren't returning values

Sometimes, when Google Sheets is unsure of the type of data that your column contains, it will not be able to return certain column values. For example, this column begins with numeric values for the first few rows. When it gets to the last row, Google expects a number and will not pass the text "Smith" to MESA.

<figure><img src="/files/k3l8xYYFgjTy9xMVdLer" alt="Screenshot of a Google Sheets column that begins with numeric values so a text value is not returned to MESA, spotlight the Smith text cell that fails to pass."><figcaption></figcaption></figure>

In these instances, select the column and specify the column type. In this instance, selecting Plain Text allowed the values to pass to MESA.

<figure><img src="/files/DPY3ppbKuHqhCbrBI0Ka" alt="Screenshot of Google Sheets with a column selected and the format menu open to specify the column type, spotlight the Plain Text option."><figcaption></figcaption></figure>

## Operation timed out error

Sometimes, workflows that have Google Sheets actions will experience the following errors:

* **Operation timed out after 30011 milliseconds with 0 bytes received**\\
* **Error from Google Sheets API: The service is currently unavailable.**\\

Both of these errors are related to [Google Sheets' API](https://developers.google.com/sheets/api/limits) not functioning correctly. Unfortunately, since we cannot control Google's API processing, these errors can occur randomly and do not reflect the workflow or MESA behaving incorrectly.

To navigate these errors when they occur, the best approach is to [replay](/workflow-activity.md#replay) them. Doing this will re-run the task that failed and (most of the time) will allow the task to be processed successfully.

You can manually replay the task from the Activity tab in the workflow or set the error handling on your Google Sheets step to automatically replay failed tasks once so that you don't have to manually make updates each time.

<figure><img src="/files/m8eT2HqaqceKAm0Tci2n" alt="Screenshot of a Google Sheets step in the MESA workflow builder showing the error handling settings, spotlight the option to automatically replay failed tasks once."><figcaption></figcaption></figure>
