← Rowtally
DocumentationPrivacyEULASupport

Rowtally documentation

Get started

  1. Install Rowtally from the Atlassian Marketplace (Confluence admin). Every site gets a 30-day free trial. After that it is $12.10 a month for up to 10 users, then billed per user.
  2. Edit a page and type /Rowtally. Choose Rowtally table totals.
  3. Put a table inside the Rowtally box: insert a new one (type /table) or drag an existing table into it.
  4. Publish. The table now has a totals row, and readers get a filter box and a sort menu above it.

If the macro has no table inside, it shows Put a table inside this Rowtally macro with a short how-to and a How totals work button.

Your table stays a normal Confluence table. Edit it, paste rows into it and use links, mentions, dates and status lozenges as usual. Rowtally only adds the totals row and the controls when the page is shown.

Totals with zero setup

Out of the box Rowtally sums every column that holds numbers or durations:

  • Money keeps its currency and format: $1,250.00, 1.250,00 €, CHF 80, USD 12. Negative amounts can be written with a minus sign or in parentheses, like (45.00).
  • Percentages and units stay as they are: 12%, 40 pts.
  • Number formats are detected per column: 1,234.56, 1.234,56 and 1 234,56.
  • Durations add up as time: 1h 30m, 2.5h, 45m, 3 hrs and 1:30 (hours and minutes). The total shows as hours and minutes, for example 11h 25m.
  • A column counts as numbers (or durations, or dates) when at least 60% of its filled cells read that way.

Columns that only look like numbers are skipped: headers such as ID, #, No., Year, Zip, Phone, Version, Ticket, Key, SKU, Code, Invoice, Order, Account, Rank, Priority, Week, Month, Quarter, Day and Age, and columns where every value is a year between 1900 and 2100. To total one of them anyway, add a rule such as Order: sum.

Hand-written total rows. If the first filled cell of the last row says just Total, Totals, Grand total, Sum, Subtotal or Overall (a colon after it is fine), Rowtally treats it as an old hand-typed total and shows its live totals row in its place. With No totals row selected, your own row is kept.

Rules: choose what each column shows

Edit the macro (pencil icon) and write rules in Rules, one per line. Each rule is Column: function (Column = function also works). You can also separate rules with ;. Lines starting with // are ignored.

RuleWhat it shows
Amount: sumAdds up the column
Hours: averageThe average (also avg or mean)
Price: medianThe middle value, which ignores one huge outlier
C: min / C: maxLowest or highest value
Due date: earliest / Due date: latestFirst or last date in a date column
Owner: countHow many cells are filled in
Status: count DoneHow many rows say Done (status lozenges count too)
Owner: uniqueHow many different values there are
Year: noneNever total this column

Refer to a column by its header text (capitals and accents don't matter), by its letter (C), or by its number (#3, col 3, column 3). The start of a header also works when it matches only one column, so Amount finds "Amount (USD)".

The totals cell shows a short prefix so readers know what they're looking at: Avg, Median, Min, Max, Count, Unique, Earliest, Latest, or the counted value (for example Done: 6). Sums have no prefix.

If a rule can't be used, a note appears above the table that says why, for example a column name that doesn't exist (with the list of column names) or an unknown function. Rowtally also warns when a rule tries to sum dates or text and suggests latest or count instead.

How totals work (next to the controls) opens a dialog with worked examples of every rule and of the column filter.

Macro settings

Edit the macro to change these. Every field is optional.

  • Totals row
    • Sum every number column (rules below override): the default.
    • Only the columns in the rules below
    • No totals row (filter and sort only)
  • Rules, one per line: see above.
  • Label for the totals row: "Total" by default. The label goes in the first column that has no total. If every column has a total, the label is put in front of the first one.
  • Where the totals row goes: Bottom of the table, Top, under the header (no scrolling to see it), or Both.
  • Controls for readers: Filter and sort, Sort only, or None, totals only.
  • Default sort: for example Amount desc, or Due date, Owner. You can sort by several columns; each one is ascending unless you add desc (also accepted: asc, descending, high to low, low to high, newest first, oldest first, a-z, z-a).
  • Number format: Detect from the table, 1,234.56, 1.234,56 or 1 234,56. Set it when a column mixes styles and totals look 1000 times off.
  • Decimal places in totals (blank = same as the column): 0 to 6.
  • Which table, if the macro holds more than one (1 = first): tables are counted in page order, including tables inside layouts and expands within the macro. If the number is higher than the number of tables, Rowtally uses table 1 and says so.

Filtering rows (readers)

On the published page, above the table:

  • Filter rows: searches the whole row. Every word must appear somewhere in the row. Put a phrase in quotes ("New York") to keep it together, and put a minus in front of a word to exclude rows with it (-cancelled). Capitals and accents are ignored.
  • Column filter: pick a column (the list starts at Any column).
    • For text columns with up to 60 different values you get a value picker (Any value). Pick one or more values, such as Done and In review.
    • For other columns you type into a box. Number, duration and date columns take comparisons; text columns match text that contains what you type.
TypeMeaning
>1000Over 1000 (also >=, <, <=, =)
!=0Anything but zero (<> also works)
10..50Between 10 and 50, inclusive (10 to 50 also works)
>=2026-07-01On or after a date, in date columns
(empty)Rows with nothing in that column
(not empty)Rows with something in that column

Totals always follow the filter. The label changes to Total (4 of 12) and 4 of 12 rows appears next to the controls. If nothing matches, the page says No rows match. Reset shows the whole table again.

Reset clears the search, the column filter and the reader's sort.

Filters and sorting are for the person reading. They are not saved and don't change the page for anyone else.

Sorting (readers)

The sort menu lists Original order and two directions for each column:

  • numbers and durations: low to high, high to low
  • dates: oldest first, newest first
  • text: A to Z, Z to A (numbers inside text sort naturally, so "Item 2" comes before "Item 10")

Blank cells always sort last. If the macro has a default sort, the table opens in that order; Reset goes back to it.

Table shapes

  • Header rows: the rows at the top where every cell is a header cell. With no header row, columns are named by letter (A, B, C).
  • Header columns, cells merged across columns and column widths and alignment are kept. Totals line up with the alignment of the numbers above them.
  • Cells merged across rows: totals still work, but sorting and filtering are switched off and the table says This table has cells merged across rows, so sorting and filtering are off. Totals still work.
  • Several tables in one macro: pick one with Which table. The other tables are shown unchanged.

PDF and Word export

Exports include the totals row and the default sort. Reader filters are not part of an export, so an export always has the whole table.

Licensing and trials

Rowtally is paid through Atlassian, with a 30-day free trial. If the license is not active, the macro shows Rowtally license is not active and the table exactly as written, without totals, sorting or filtering. They come back as soon as a site admin renews in Apps > Manage apps. Exports also show the table as written while the license is inactive.

Permissions and data

  • Rowtally runs on Atlassian's Forge platform and sends nothing to any outside server. The app has no external network permissions.
  • It asks for no Confluence API permissions (no scopes). Everything is calculated in the reader's browser from the page content Confluence already passes to the macro, so pages don't wait on extra requests.
  • Rowtally stores nothing. Your macro settings are saved in the page itself, like any macro's settings.
  • Readers only ever see tables on pages they can already view.

Limits and known trade-offs

  • The totals row is calculated each time the page is shown. It is not written into the page content, so Confluence search and other apps see the table without it.
  • The sort menu sorts by one column at a time. Use Default sort for several columns.
  • Sorting and filtering are off for tables with cells merged across rows (totals still work).
  • The value picker appears for text columns with up to 60 different values; larger columns use the text box.
  • Durations accept hours and minutes. Days and weeks (2d, 1w) are not added up, because a working day means 8 hours in some tools and 24 in others.
  • A column is only treated as numbers when at least 60% of its filled cells read as numbers. Add a rule to total a column that misses that mark.
  • Reader filters and sorting reset when the page is reloaded.

FAQ

How do I sum a column? You don't have to do anything: number columns are summed as soon as the table is inside Rowtally. For anything else, write a rule such as Hours: average or Status: count Done in the macro settings. How totals work shows an example of every rule.

My last table app made tables disappear or show blank. Can that happen here? The table is a native Confluence table in the page. Rowtally only adds to it when the page is shown. If anything goes wrong while calculating, or the license is inactive, the table is shown exactly as written.

Will it slow my pages down? No. Rowtally makes no API calls and loads no data. It works from the page content Confluence has already loaded.

Our hand-typed Total row is always out of date. Does Rowtally fix that? Yes. A last row whose first filled cell says "Total" (or Totals, Grand total, Sum, Subtotal, Overall) is replaced by a live totals row that updates whenever the table changes.

Are totals included in PDF exports? Yes. PDF and Word exports include the totals row and the default sort.

Do merged cells break it? Cells merged across columns work normally. With cells merged across rows, totals still work and sorting and filtering are switched off with a note, so rows are never shuffled into the wrong merged cell.

What happens if we stop using Rowtally? Your table is still in the page as a normal Confluence table. Rowtally never changes it.

Does any of our data leave Atlassian? No. Rowtally has no network access, no API permissions and no storage.

Uninstalling and your data

Rowtally stores no data, so there is nothing to delete. Your tables are your own page content.

Support

Open a request in the Great Work support portal (linked from the Marketplace listing) or email hello@greatwork.company. First response within 1 business day.