Drag-and-drop field config
Move fields between rows, columns, and values at runtime. Updates are diffed and applied incrementally - no full re-render.
Client-side pivoting, aggregation, and grouping - powered by RevoGrid. No backend. Works with hundreds of thousands of rows.
Built as a first-party plugin in RevoGrid Pro - full access to the render pipeline, event model, and column type system.
Move fields between rows, columns, and values at runtime. Updates are diffed and applied incrementally - no full re-render.
Sum, average, count, min, max - computed in the browser. Zero latency, zero server round-trip.
RevoGrid's virtual rendering keeps 100k+ row pivot computation smooth. Only visible cells are in the DOM.
Source data updates recalculate pivot results without grid teardown. Built for live data subscriptions and dashboards.
Pass any reduce function - weighted averages, percentile ranks, custom business metrics. No library patching.
Dynamic column generation from data values. Fully compatible with RevoGrid's column type system.
Install RevoGrid, register the pivot plugin, configure your fields. No separate pivot server, no extra build pipeline.
import { RevoGrid } from '@revolist/react-datagrid';
import {
PivotPlugin,
commonAggregators,
type PivotConfig,
} from '@revolist/revogrid-enterprise';
const pivot: PivotConfig = {
dimensions: [
{ prop: 'region', name: 'Region' },
{ prop: 'product', name: 'Product' },
{ prop: 'quarter', name: 'Quarter' },
{
prop: 'revenue',
name: 'Revenue',
aggregators: {
...commonAggregators,
},
},
],
rows: ['region', 'product'],
columns: ['quarter'],
values: [{
prop: 'revenue',
aggregator: 'sum',
}],
totals: { grandTotal: true, subtotals: true },
};
export function SalesAnalytics({ data }) {
return (
<RevoGrid
source={data}
plugins={[PivotPlugin]}
pivot={pivot}
theme="default"
/>
);
}Compared against AG Grid Enterprise and generic pivot libraries on architecture, flexibility, and pricing.
| Feature | RevoGrid Pivot | AG Grid Enterprise | Generic pivot libs |
|---|---|---|---|
| Client-side aggregation | ✓ Smart Cache | ✓ | ✓ |
| Virtual row + column rendering | ✓ Native | ✓ | ✕ DOM-heavy |
| Custom cell renderers in pivot | ✓ Full access | ~ Limited | ✕ |
| Switch pivot / flat / group at runtime | ✓ Config flag | ~ Separate | ✕ |
| Framework support | React, Vue, Angular, Svelte, JS | React, Vue, Angular | Varies |
| Open-source base layer | ✓ MIT core | ✕ Fully commercial | ✓ |
| Pricing model | Per-seat, no row/app limits | Per-dev, costly at scale | Free / inconsistent |
Pivot is a UI primitive, not a reporting add-on. It replaces heavy backend analytics infrastructure in these contexts.
P&L tables, budget-vs-actual comparisons, multi-dimensional cost rollups with instant recalculation.
finance · ERP · planningEmbed pivot directly in your SaaS product so users configure their own breakdown.
SaaS · embedded analyticsOps dashboards, support ticket breakdowns, sales pipeline by rep and stage.
ops · admin panels · CRMReplace a BI iframe with a native pivot that matches your design system.
BI · data product · analyticsThis pivot functionality is one of several advanced plugins in RevoGrid Pro. The grid handles virtual rendering, column types, editors, event model, and framework adapters. Pivot extends it - doesn't replace it.
Pivot is in RevoGrid Pro. The MIT open-source core includes grouping, sorting, and virtual rendering. Start free - upgrade when you need pivot.