diff --git a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/table-data-viewer.tsx b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/table-data-viewer.tsx
index 49c6b9a50..dbd471f08 100644
--- a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/table-data-viewer.tsx
+++ b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/table-data-viewer.tsx
@@ -311,9 +311,13 @@ export function TableDataViewer() {
{tableData.name}
-
- {totalCount} {totalCount === 1 ? 'row' : 'rows'}
-
+ {isLoadingRows ? (
+
+ ) : (
+
+ {totalCount} {totalCount === 1 ? 'row' : 'rows'}
+
+ )}
@@ -519,18 +523,40 @@ export function TableDataViewer() {
{isLoadingRows ? (
- Array.from({ length: 5 }).map((_, i) => (
-
+ Array.from({ length: 25 }).map((_, rowIndex) => (
+
- {columns.map((col) => (
-
-
-
- ))}
+ {columns.map((col, colIndex) => {
+ // Vary skeleton width based on column type and add some randomness
+ const baseWidth =
+ col.type === 'json'
+ ? 200
+ : col.type === 'string'
+ ? 160
+ : col.type === 'number'
+ ? 80
+ : col.type === 'boolean'
+ ? 50
+ : col.type === 'date'
+ ? 100
+ : 120
+ // Add some variation per row
+ const variation = ((rowIndex + colIndex) % 3) * 20
+ const width = baseWidth + variation
+
+ return (
+
+
+
+ )
+ })}
-
+
+
+
+
))