> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tablixhq.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Troubleshooting

> Step-by-step fixes for common Tablix issues: file limits, Python/SQL errors, chart problems, Google Drive sync, checkout, and more.

<Tip>
  This list covers everyday hiccups. For a full technical reference of every error message in Tablix and exactly what triggers it, see [Error Handling](/error-handling).
</Tip>

### "File Limit Reached" modal appears when saving

You're on the **Starter** plan, which allows up to 10 saved files. Either delete/trash unused files, or upgrade to **Beginner** or **Professional** for unlimited files. See [Payment & Billing](/payment) for plan details and the checkout flow.

### My upgrade/checkout isn't going through

* Make sure you're signed in with Google or Microsoft — checkout requires a valid Tablix session.
* If the checkout page fails to open, try again from **Settings → Billing & Plans**; a new checkout session is created each time you click a plan.
* To change payment method, view invoices, or cancel, use **Manage Subscription** (Settings → Billing & Plans) rather than starting a new checkout — this opens the Dodo Payments customer portal directly. See [Payment & Billing](/payment#managing-or-canceling-a-subscription).

### I uploaded a `.xls` file and got a warning

<Warning>
  Legacy `.xls` files are flagged with a compatibility warning modal rather than imported directly like `.xlsx`/`.csv`/`.json`/`.sheet`.
</Warning>

If possible, re-save the file as `.xlsx` in Excel (or another spreadsheet tool) first, then import it.

### Speech recognition is not supported in your browser

The AI Assistant's voice input relies on your browser's built-in Speech Recognition API. If you see this message, your browser doesn't support it — try a Chromium-based browser (e.g., Chrome or Edge), or use text input instead.

### My microphone doesn't seem to work / no waveform appears

Voice input and its waveform visualizer both require microphone permission. Check that your browser has been granted microphone access for the site, and that no other application is exclusively holding the microphone.

### Python code fails with an error

<Steps>
  <Step title="Read the console">
    Errors show the specific Python error type (e.g., `NameError`, `TypeError`) and, when possible, underline the offending line in the editor.
  </Step>

  <Step title="Try Fix with AI">
    Click **Fix with AI** on the error message to have the AI attempt an automatic fix.
  </Step>

  <Step title="Check your imports">
    Only `pandas`, `numpy`, `scikit-learn`, and `scipy` are available — code importing other libraries (e.g. `matplotlib`) will fail. Use `create_chart()` for visualizations instead.
  </Step>

  <Step title="Use the right bridge function">
    If a script uses `set_data()` for something meant to be an in-place edit (cleaning, filtering, sorting, formatting), that will overwrite the table structure. Use `update_cells()`, `apply_filter()`, `sort_table()`, or `apply_format()` for in-place operations instead.
  </Step>
</Steps>

### SQL query fails with "Table not found" or "Invalid column name"

* Your query must select from the table named **`sheet`** — this is the only table available.
* Column names are auto-sanitized from your header row (spaces and special characters become underscores). If a query references a column name that doesn't match the sanitized version, check the sanitized names by reviewing your header row, or ask the AI to regenerate the query — it uses the sanitized names automatically.

### A chart looks wrong or shows no data

* Confirm the correct **Labels** and **Lines/Values** columns are selected in the Data tab of the Chart editor.
* If you used `apply_filter()` in Python before calling `create_chart()`, don't also pass `filter_labels` to `create_chart()` — combining both can cause the chart to show incorrect or blank data, since the sheet is already filtered.
* For a Geo Map, make sure your label column contains recognizable country names.

### Google Drive files aren't showing up on the dashboard

You'll see a **"Connect Google Drive"** prompt if Drive isn't connected or the connection has expired. Click **Connect Now** and complete the Google authorization flow again.

### I can't edit a sheet — my changes aren't going through

The sheet may be **protected**. Protected sheets block editing (typing, formatting, structural changes) but still allow navigation, selection, copying, and Find/Replace. Unprotect the sheet to resume editing.

### A generated table/insight seems off in an in-progress Agent run

Agent mode runs step by step and shows what it's doing (e.g., "Fixing execution error (Step 3)..."). If a step fails, the AI automatically attempts to correct its own code on the next step using the error from the previous one. You can stop the loop at any time using the stop button if it isn't converging on what you want.

### My exported PDF/HTML looks different from the sheet

PDF and HTML exports render your visible grid, formatting, charts, images, text boxes, and drawings using their own rendering pipeline (not a browser print of the live app), tightly cropped to your content's actual extent.

<Tip>
  If something looks off, check that your data doesn't extend further right/down than expected — extra formatting on far-away blank cells can expand the exported range.
</Tip>
