Guides

Retool Expandable Rows Not Adding Components: Bug Fix Guide

OTC Team··4 min read
Retool Expandable Rows Not Adding Components: Bug Fix Guide

If you're trying to add a component to a Retool expandable row and it keeps getting placed outside the table instead of inside the expanded section, you've run into a confirmed bug in the Retool table component. This issue affects adding components to expandable rows across multiple apps and persists even after deleting and recreating the table. You're not doing anything wrong — here's what's happening and how to get unblocked right now.

What Is the Retool Expandable Rows Bug?

The expandable rows feature in Retool's Table component lets you embed child components — like nested tables, forms, or text elements — directly inside a row that expands on click. It's a powerful pattern for showing detail views without navigating away from the main data set.

The bug surfaces like this: you open the first row of your table (which is the only editable row for layout purposes), click Add component, select any component — say, a second Table — and instead of the new component appearing inside the expandable row canvas, it gets dropped below the parent table entirely. Drag-and-drop doesn't help either, because the expanded row collapses the moment you start dragging, making it impossible to drop anything inside.

Multiple users have confirmed this happens across fresh apps, existing apps, and apps that previously had working expandable row layouts — meaning something changed on Retool's side, not yours.

Why Does This Happen?

The root cause is a regression in how Retool's canvas handles component placement targeting when the expandable rows panel is active. The editor loses track of the drop target context — so instead of scoping the new component to the expandable row container, it falls back to the top-level app canvas. This is an editor-side bug, not a data or query issue, which is why deleting and recreating the table doesn't resolve it.

Does the Official Workaround Actually Work?

Retool's support team suggested the following workaround. It works for some users but not all — your mileage may vary depending on your Retool version:

  • Enable expandable rows on your primary table (table1).
  • Attempt to drag a simple Text component into the expandable row of table1. A text element is more likely to accept the drop than complex components.
  • Separately, add and configure the component you actually want (e.g., table2) somewhere on the canvas outside the expandable row.
  • Copy table2 using Ctrl+C / Cmd+C.
  • Click to select the Text element you placed inside table1's expandable row.
  • Paste with Ctrl+V / Cmd+V — the copied component should paste into the expandable row context.
  • Delete the placeholder Text component once your real component is in place.

Several users in the community thread report this paste-into-context trick does work for getting a nested Table inside the expandable row. However, others have found that even this approach fails. If it doesn't work on your first attempt, try it in a brand-new, empty app to rule out any app-level state interference.

Alternative Approaches While You Wait for a Fix

If neither the drag-and-drop nor the copy-paste workaround is working for you, here are two practical alternatives that don't rely on the buggy expandable row editor:

  • Use a Drawer or Modal instead: Trigger a Drawer or Modal component on row click using the table1's row click event handler. Pass the selected row's data via table1.selectedRow.data to populate the detail view. This is actually a more accessible and mobile-friendly pattern anyway.
  • Use a detail panel below the table: Place a detail container component directly below your table1 and show/hide it based on table1.selectedRow. Set its visibility condition to {{ table1.selectedRow !== null }}. It mimics the expandable row UX without requiring the buggy editor feature.

How to Report This to Retool Support

If you need the actual expandable rows feature and none of the workarounds are cutting it, escalate directly:

  • Go to Help → Contact Support inside your Retool app editor.
  • Reference the community thread at community.retool.com/t/adding-component-to-expandable-rows-bug/49452 so support can tie your ticket to the known issue.
  • Include your Retool version number (found under Settings → About) and whether you're on Retool Cloud or self-hosted.

Key Takeaways

Adding components to Retool expandable rows is broken for many users right now due to a canvas targeting regression in the table editor. The Add component button drops components outside the table, and drag-and-drop collapses the expanded row before you can release. The best available workaround is to drag a Text element in first, build your target component elsewhere, copy it, select the text element, and paste. If that still fails, a Modal, Drawer, or conditional detail panel are solid substitutes that may actually serve your users better in the long run.

Ready to build?

We scope, design, and ship your Retool app — fast.

Ready to ship your first tool?