Loading...
Help Center / Apps & Extensions / Power Tables FAQ

Power Tables FAQ

Power Tables FAQ

Answers to common setup and operating questions about Power Tables.
For what the app is and how to set it up from scratch, see the
Power Tables Overview.


Setup

Do I need to configure anything before my team can use Power Tables?

An admin must enable the app from the Apps Marketplace — it is off by default. Once enabled, every member with app access can open and search tables. No other configuration is required before creating your first table, but you may want to review the quota settings (max tables, rows, columns, and indexes) and set a default currency for money columns in the app’s Settings tab.

What settings does Power Tables have?

Ten, all at Power Tables → Settings (admin only):

Setting Default
Max tables 5
Max rows per table 1,000,000
Max columns per table 25
Max indexed columns per table 4
Max shared views per table 25
Max automation rules per table 25
Tell people when a row is assigned to them On
Enable the Power Tables AI agent in Ask AI Off
Enable Create-with-AI for new tables On
Default currency for money columns USD

The six limits are quotas (see “What are the quotas” below). The assignment-notification switch controls the Inbox item sent when a User column names someone on a single-row write — bulk paths (imports, bulk update, sample data) never notify, whatever this is set to. The default currency applies to Currency columns that do not declare their own; individual columns can override it, and stored amounts are never converted.

Who can create tables and who can only view them?

Power Tables has three tiers of access. Admins (business admins, super admins, or anyone granted the Power Tables app-admin role) can create tables, define columns, import data, manage settings, and archive tables. Contributors (users granted the Power Tables contributor role) can add and edit rows but cannot change columns, run imports, or manage settings. Everyone else with app access can open tables, filter, sort, and search — viewing is not a privileged action.


Permissions and access

Can I restrict a table so only certain people see it?

Yes. Each table has an access mode. The default — Everyone — means any member with app access can open the table. Switching to Restricted hides the table from everyone except admins and the people or groups you grant access to. Grants come in three levels: Viewer (can open the table and read rows), Contributor (can also add and edit rows), and Manager (can also change columns, settings, and the table’s sharing). Admins always have full access regardless of grants. Grants can target individual users or notification recipient groups, and they support optional expiry dates.

Why can’t an employee see a table I shared with them?

Three things to check: (1) the app itself must be enabled for the business and accessible to the user through Access Management visibility rules, (2) the table’s access mode must be Restricted with a grant for that user or a group they belong to — on an Everyone table grants are inert, and (3) the grant must not have expired. If a restricted table has no active grant for the person, Power Tables returns a “not found” response rather than a “forbidden” one.


Day-to-day

Can I change a column’s type after creating it?

No. A column’s type is fixed at creation to keep the underlying storage consistent. Add a new column with the correct type instead. Renaming a column, by contrast, is instant at any table size — it changes only the display name, not the physical storage.

What column types are available?

There are 12 types: Text, Long text, Number, Currency, Boolean (yes/no), Date, Date & time, Select (with admin-defined option lists), Email, URL, User (picks a person with the people picker), and Attachment (a file on a row — photos, signed documents). Attachment columns cannot be populated through CSV import; attach files from the row drawer after import.

A counter column is not a thirteenth type — it is a tick-box on a Number column that swaps the typed field for − / + steppers. See the counting questions below.

How do validation rules work?

Each column can enforce rules on every write — including imports and the API. Available rules depend on the column type: Required is available on all types. Min/max bounds are available on number, currency, date, and date & time columns. Regex pattern is available on text, long text, email, and URL columns. Rules are enforced per row during imports, and rows that fail validation are skipped with an error reported against that row number.

Why won’t Power Tables let me archive a column?

Because something is still using it. Archiving a column is refused while any of three consumers depends on it:

  1. An enabled automation rule that references the column in its trigger, conditions, or actions.
  2. An active Live Board that uses the column as its entity or its score column.
  3. A bound Form that maps a field to the column — including using it as the match column in update mode.

The refusal names each one by name (“Stock Count can’t be archived: it’s used by the automation rule “Reorder alert” and the board “Low stock”…”), so you can go and edit or remove those first. This is deliberate: archiving the column anyway would pause the rules and blank the boards behind a success message.

Renaming the column is always safe, at any table size and with no dependency check, because everything in the product references columns by ID rather than by name. If you only want to relabel it, rename instead of archiving.

What happens when I archive a table?

The table is hidden immediately from all surfaces — the table list, Live Boards, the API, and mobile. Any Live Boards bound to a view on it show a “source unavailable” message. You have 7 days to restore it; after that the data is permanently deleted. A warning notification is sent to the creator and admins 24 hours before the permanent deletion. Restoring an archived table counts toward your table quota, so you must have room under your limit to restore it.

Can I undo a row deletion?

Yes, for a limited time. Deleted rows (single deletes, bulk deletes, and rows cleared by a replace-mode import) are spooled in a recovery log for 30 days. An admin can restore a batch from the Deleted Rows page on each table. A restored row is re-inserted as a new row through the normal write path, so it inherits current column rules and counts against the row quota. For replace-mode imports that cleared more than 50,000 rows, the recovery log may be partial — the page discloses this.


Counting, mobile, and scanning

How do counter columns work?

Tick Show − / + steppers for quick counting on any Number column. That column then renders − / + buttons instead of a typed field in three places: the desktop grid, the row drawer, and the mobile card at /m/power-tables. The mobile steppers are plain form buttons and work with no JavaScript at all.

The steppers appear only for people who can write rows on that table — contributors, managers, and admins. Viewers see the plain number, which is the usual reason someone reports “I don’t have the buttons.”

The tick is a behaviour flag, not a new column type. Untick it and the column goes back to being an ordinary number field; the stored data is unchanged either way. It is also number-only: setting the flag on any other type does nothing.

Can two people count the same shelf at the same time?

Yes — that is the whole point of counter columns. A tap sends the change, not the answer. The server takes a lock on the row and applies new = max(0, current + delta), so if a shelf holds 12 and two people each tap − at the same instant, the result is 10, never 11. Counts floor at zero; a counter cannot be driven negative, and the resulting update can fire an automation so someone is told to reorder.

Because a tap is a delta rather than an absolute value, counter adjustments deliberately carry no “someone else changed this first” conflict check — deltas compose, so there is nothing to conflict over. Typing an absolute value into the row drawer still gets the normal check.

Can I record why a count changed?

Yes. Beside the stepper in the row drawer there is a note field — type a short reason (“used in OR 2”) before tapping − or +, and it is saved with that adjustment. Notes are capped at 500 characters; anything longer is truncated.

Read them back in the row’s own History panel: open the row and expand History. The note appears in quotes on the change entry it belongs to, alongside the column name, the old and new values, and who made the change.

Note text is shown only in the row’s History panel. The table-wide Activity log records who created, updated, or deleted rows, but does not render the note — so if you are looking for the reason behind a count, open the row, not the activity log.

Can people use Power Tables from a phone?

Yes, for reading and counting. The mobile surface at /m/power-tables gives table cards and searchable row cards, plus working − / + steppers on any counter column, so a frontline user can find an item and adjust its count from the floor.

Everything else stays on desktop: adding rows, editing other fields, importing, exporting, and all configuration. If you need frontline users to capture data on a phone, bind a Form to the table — see below.

Can we scan barcodes into a table?

Yes, into Text columns. Edit the column and tick Scan a barcode or QR code into this field. On a phone, the row form then shows a Scan button that reads the code with the camera and drops the value straight into the field; typed entry always remains available as a fallback.

Six symbologies are supported: QR, Code 128, Code 39, EAN-13, EAN-8, and UPC-A. Scanning uses the browser’s built-in barcode detector, so availability depends on the phone’s browser — the typed fallback covers devices where it isn’t available.


Import and export

What file types and sizes can I import?

Power Tables accepts CSV, XLSX, and XLS files. CSV files can be up to 500 MB via the direct-upload path. Excel files (XLSX/XLS) are capped at 100 MB because the parser loads the workbook’s shared-strings table into memory. For a multipart upload (the no-JavaScript fallback), the limit is 100 MB regardless of type. If an Excel file is too large, save it as CSV instead.

How does the scheduled import work?

Each table can have one scheduled import that runs nightly, pulling a CSV or Excel file from a remote source. Two modes: Replace clears all existing rows and re-imports (the source is the system of record), and Append adds rows on each run (for accumulating logs). Sources can be a public HTTPS URL (no setup), a protected URL via a Data Feed connection configured at /admin/integrations (sends a bearer token, basic auth, or custom header), or a remote file on an SFTP server via an SFTP connection. A Run now button triggers it on demand, and the last run’s status shows on the table page.

Can I export data, and what are the limits?

Yes. Export captures the current view’s filters, search, sort, and visible columns, and runs as a background task. CSV export has no row cap. Excel export is capped at 100,000 rows because the writer builds the workbook in memory. Scheduled exports can push a CSV or XLSX file nightly to an SFTP server — the SFTP connection is required (exports always push to a credentialed destination).

Note the asymmetry between the two schedules: a scheduled import can pull from a public HTTPS URL, a credentialed HTTPS endpoint, or SFTP. A scheduled export is SFTP only.

Can a Form feed a table?

Yes, and it is the recommended way to let frontline users capture data — Forms already has a mobile surface, validation, and an audience model. Bind it from the table’s Setup page: pick a form template and map each form field to a table column. The binding is stored on the form template.

There are two modes:

  • Append (the default): every submission adds a new row. Ingest is idempotent — a form that passes through several completed states (submitted, then approved) still produces exactly one row, and editing the submission afterwards does not rewrite the row it created.
  • Update (stock-take semantics): the binding names a match column. The submission’s answer for that column finds the existing row, and every other mapped answer is written onto it — “how many are left?” updates the master item instead of appending a log line. Last write wins; the row’s History records who and when.

In update mode, if nothing matches the value, the binding’s unmatched setting decides: create a new row (with the match value included, so it is findable next time), or record a visible skip on the submission. If two or more rows share the match value, Power Tables stops and records a skip rather than guessing which one to overwrite. A rejected answer never fails the submission itself — it is recorded against the binding, whose health card is on the table’s Setup page.

One caveat: a column mapped by a binding (or used as its match column) cannot be archived until the binding is edited or removed.

Is there an API, and what can it do?

Yes, under /api/v1/power-tables. Five endpoints:

Endpoint What it does
GET /power-tables List tables
GET /power-tables/:id One table’s structure — columns (with currency units) and views
GET /power-tables/:id/rows Read rows, using the same filter grammar and keyset pagination as the grid
GET /power-tables/:id/aggregate Filtered aggregates — count, sum, avg, min, max
POST /power-tables/:id/rows Create one row, through the same casting, quota, validation, and audit path as the row drawer

The API can create a row but cannot update or delete one. There is no PATCH and no DELETE on rows, and no endpoint that changes configuration — that is deliberate, not an oversight. Row edits and deletes go through the app, the mobile steppers, bulk actions, automations, or a bound Form.

Access is by API token with least-privilege scopes: read:power_tables for reads, write:power_tables for row creation. Row creation additionally requires the token’s user to hold Power Tables contributor rights or above, exactly like the web row drawer. A restricted table is invisible — not forbidden — to a token whose user holds no grant on it.


Saved views and automations

How do relative date filters work?

A filter on a Date or Date & time column can be a moving window instead of a fixed value. Eight operators are available:

today, yesterday, this week, this month, this quarter, this year, last N days, and next N days.

Both ends of the window are recomputed on the server every time the filter runs — never stored as dates. So a view saved as “expiring in the next 30 days” keeps meaning exactly that, instead of quietly freezing to the 30 days that followed the day you saved it. Windows are half-open ranges, which is what makes them correct on a Date & time column (a plain “on or before the end date” bound silently drops everything after midnight on the last day).

For last N days and next N days, N is clamped to 1–3,650 (ten years). “Last 7 days” includes today.

The same vocabulary is used in four places: grid and saved-view filters, Live Boards period selectors, view-watch alerts, and the Power Tables AI agent. The agent exposes seven of the eight — it has no next N days.

What are personal views versus shared views?

Shared views belong to the table and are visible to everyone who can see the table. They are the only views that Live Boards can bind to and that automation schedule rules can use as row selectors. Personal views belong to one user and are visible only to them. Each user can have up to 25 personal views per table. The shared-view cap is a configurable quota (default 25 per table, up to 100).

What can automations do, and what are the limits?

Automation rules fire on row events (row created, updated, field changed, or deleted) or on a schedule bound to a saved view. Available actions include: update fields, notify a user, send an external email, request approval, create a task, send an HTTP request (webhook), lock a row, archive a row, delete a row, and three AI actions (fill a column, summary digest, anomaly alert). Limits: up to 25 automation rules per table (configurable up to 50), up to 10 actions per rule, up to 50 conditions per rule, and scheduled rules process a maximum of 10,000 matching rows per run. Hourly caps apply per business: 500 automation executions, 100 webhooks, and 50 external emails per hour. A rule that fails 5 consecutive runs pauses itself automatically and notifies the owner.


When something looks wrong

“I imported a CSV but some rows are missing”

Check the import task’s error report — it lists every skipped row by number with the reason. Common causes: the row violated a column validation rule (required value missing, number out of min/max range, value not in the select list), or the table hit its row quota and the remaining rows were skipped. Import stops cleanly at the quota boundary and reports how many rows were skipped.

“My Live Board shows ‘source unavailable’”

The board is bound to a saved view on a Power Tables table. Check whether the table was archived (the board loses its source immediately on archive) or the view was deleted. If the table is still active, re-check the view in Power Tables — if it was a personal view, boards can only bind to shared views, and a personal view that was converted or deleted breaks the binding.

“The scheduled import failed”

Open the table page and check the last run’s status. Common causes: the source URL returned an error or timed out, the SFTP connection credentials are invalid or the remote file path doesn’t exist, the file exceeds the size limit, or the file isn’t a supported format (CSV, XLSX, or XLS). For protected HTTPS sources, verify the Data Feed connection at /admin/integrations still has valid credentials. A scheduled import that fails 5 consecutive times pauses itself automatically.


Licensing and limits

Does Power Tables require a licence?

No. Power Tables is a pay-as-you-go app — available to every tenant with no licence decision. It stays off until an admin enables it. Billing is per 1,000 rows stored per year; there is no per-seat charge and no monthly floor.

Exactly what does Power Tables cost?

The meter is rows stored, in units of 1,000 rows per year, counted nightly across your active tables. Prices are tiered, and the tier applies to the band the rows fall in:

Rows stored Price per 1,000 rows / year
First 1 million $1.20
Up to 10 million $0.36
Above 10 million $0.24

Row counts are rounded up to the next 1,000. Two things are explicitly not billed:

  • Archived tables. Archiving a table takes it off the meter immediately. (It also starts the 7-day purge clock — see the retention question.)
  • MangoApps sample data. Sample tables are flagged at creation and are excluded regardless of what they are named or how their description is edited.

There is no per-seat charge and no monthly floor, so a small table costs a small amount. Mini App rows bill on this same meter — a Mini App does not add a second charge.

Do quotas affect my bill?

No. They are separate mechanisms, and confusing them leads to the wrong fix.

  • Quotas are capacity guardrails on shared infrastructure — how many tables, rows, columns, indexes, shared views, and automation rules you may have. Raising one costs nothing.
  • The billing meter is rows stored, counted nightly across active tables.

Raising the max-rows quota from 1 million to 10 million does not change your bill by a cent; storing 10 million rows does. Likewise, lowering a quota does not reduce what you pay — archiving or deleting rows is what does that.

How long is data kept?

What Kept for
Per-field row change history (the row’s History panel) 180 days
Deleted rows in the recovery bin 30 days
Automation run log 90 days
Scheduled import/export run log 90 days
Archived table before permanent purge 7 days, with a warning notification 24 hours before

The 7-day archive grace period is the only one of these that ends in permanent data loss, and it is the only one that warns you first: an Inbox notice goes to the table’s creator and to admins 24 hours before the purge, and restoring the table at any point in the 7 days cancels it.

Imports and bulk inserts are deliberately not written to the per-row change history — the import task record is the audit trail for those. Table rows themselves are kept indefinitely; only the history of changes to them ages out at 180 days.

What can the Power Tables AI agent do, and is it on?

It is off by default — turn it on with Enable the Power Tables AI agent in Ask AI in Settings. It is admin opt-in because the agent both reads every row of every table it can see and carries write tools.

The agent has 12 tools. Seven are read-only: list tables, get one table’s structure, count rows, search rows, aggregate rows, list import activity, and compare entities to a target. Five are writes: create a table, create a saved view, request a column index, add a row, and update a row. Every write is confirm-gated — the agent shows the exact change and waits for you to approve it before anything is written. The three configuration writes are admin-only; the two row writes are available to contributors, matching the web row drawer.

The agent honours the same access rules as the app: a restricted table a user holds no grant on is invisible to their questions.

What are the quotas, and can I change them?

Six quotas are admin-configurable in the Power Tables Settings tab:

Quota Default Self-serve ceiling
Tables per tenant 5 25
Rows per table 1,000,000 10,000,000
Columns per table 25 100
Indexed columns per table 4 7
Shared views per table 25 100
Automation rules per table 25 50

Plus one that is not configurable: 25 personal views per user per table. That is a separate pool from the shared-view quota and a per-user fairness limit rather than a tenant capacity choice, so raising “max shared views” does nothing for a user who has hit it — they delete a personal view they no longer use.

When a quota is at its ceiling and you need more, contact MangoApps support — they can grant higher limits from the Console without a code change (up to 500 tables and 100,000,000 rows per table). When the limit is below the ceiling, any admin can raise it in Settings. A limit can never be set below what is already in use, and if MangoApps staff have raised a limit for your account the Settings page says so.

Raising a quota does not change your bill — see “Do quotas affect my bill?” above.


More help

On this page