Infinite Table vs DevExtreme DataGrid
DevExtreme DataGrid is one component in a large commercial UI suite. Infinite Table is a single, zero-dependency data grid, free to use with a footer.
Facts last verified on November 11, 2026, with a source link for each one.
DevExtreme DataGrid is a mature, full-featured grid inside DevExpress's JavaScript UI suite: grouping with summaries, master-detail, five editing modes, many filter UIs, Excel and PDF export and remote operations, for React, Angular, Vue and jQuery. Pivoting and tree data live in separate components (PivotGrid and TreeList). It is sold as a subscription, $899.99 per developer per year for DevExtreme Complete, with no free tier.
Infinite Table has grouping, pivoting and tree data in the grid itself, with zero runtime dependencies, and is free to use with a footer ($395 per developer per year without it). DevExtreme is ahead on export, accessibility, RTL and the breadth of its surrounding suite.
When to choose which
Choose DevExtreme DataGrid if
- You want one vendor for a whole UI suite: grid, charts, scheduler, forms and more.
- You need Excel or PDF export, or documented accessibility and RTL.
- You also build with Angular, Vue, jQuery or ASP.NET.
- You want commercial support from a large vendor.
Choose Infinite Table if
- You want pivoting and tree data in the same grid, not in separate components.
- You want a grid you can use commercially for free, or a lower price per developer.
- Dependency count and bundle size matter to you.
- You want a declarative API where every piece of state is a prop.
Features
22 of the 30 features below are built into Infinite Table, every one in the free package. DevExtreme DataGrid has 22 built in, and 4 more partly or as headless logic, counting its most complete edition (DevExtreme Complete). Each DevExtreme DataGrid entry links to its documentation.
- Built in
- Partial / with limits
- Logic only (headless)
- Not available
- Pro = needs that paid edition
| Feature | Infinite TableFree with footer · $395 per developer per year | DevExtreme CompleteCommercial (EULA) · $899.99 per developer per year |
|---|---|---|
| Rendering | ||
| Row virtualizationOnly the visible rows are rendered, out of the box. | Yessource | |
| Column virtualizationOnly the visible columns are rendered, out of the box. | Yessource | |
| Columns | ||
| Multi-column sortingBuilt-in sorting UI, including sorting by several columns. | Yessource | Yessource |
| Column filtersBuilt-in filter UI: a filter row, header filters or a filter menu. | ||
| Column resizingUsers drag to resize columns. | Yessource | Yessource |
| Column reorderingUsers drag and drop columns to reorder them. | Yessource | Yessource |
| Column pinningPin (freeze) columns to the left or right. | Yessource | Yessource |
| Column groupsMulti-level, grouped column headers. | Yessource | Yessource |
| Column menuA built-in column header menu (sort, hide, pin...). | Yessource | |
| Grouping and analysis | ||
| Row groupingGroup rows by one or more columns, with expand and collapse. | Yessource | Yessource |
| AggregationsAggregated values (sum, average...) for groups or totals. | Yessource | Yessource |
| PivotingPivot rows into dynamically generated columns. | Yessource | |
| Tree dataHierarchical (tree) rows. | Yessource | |
| Master-detailExpandable detail rows with custom content or a nested grid. | Yessource | Yessource |
| Server data | ||
| Lazy loadingLoad rows from a server in batches as the user scrolls. | Yessource | Yessource |
| Server-side sort, filter and groupBuilt-in support for sorting, filtering and grouping on the server. | Yessource | |
| Pagination UIA built-in pager. | Yessource | |
| Editing and interaction | ||
| Cell editingInline cell editing with built-in editors. | Yessource | |
| Row selectionSelect rows, including checkbox selection. | Yessource | Yessource |
| Cell selectionSelect multiple cells or ranges of cells. | Yessource | NoNot found in the DataGrid docs. |
| Keyboard navigationMove between cells with the keyboard. | Yessource | Yessource |
| Context menuA built-in cell or row context menu. | Yessource | |
| Row drag and dropReorder rows by dragging them. | No | Yessource |
| Export and charts | ||
| ClipboardCopy (and paste) cells, built in. | No | NoNot found in the DataGrid docs. |
| CSV exportBuilt-in export to CSV. | No | |
| Excel exportBuilt-in export to Excel (.xlsx). | No | |
| Integrated chartsChart grid data from inside the grid. | NoCharts are separate components; only the PivotGrid documents chart integration. | |
| Styling and accessibility | ||
| Theming with CSS variablesTheme the grid through CSS custom properties or design tokens. | Yessource | |
| Documented accessibilityARIA roles and screen reader support, documented by the vendor. | NoKeyboard navigation is built in, but ARIA roles and screen reader support are not documented. | Yessource |
| Right-to-leftRight-to-left layout support. | No | Yessource |
Side by side
Licensing and pricing
List prices as published by each vendor, in US dollars. Follow the source links for the full terms.
| Edition | License | List price | Conditions | Deployment |
|---|---|---|---|---|
| Infinite Table | Commercial (EULA) | $395 per developer per yearVolume discounts: 5% from 3 developers, 10% from 5, 15% from 10. For 20 or more developers, email us.source | Every feature is free to use, in any product, as long as the "Powered by Infinite Table" footer stays visible. A license removes the footer and adds email support. | Development licenses only: no deployment, application or SaaS licenses. |
| DevExtreme Complete | Commercial (EULA) | $899.99 per developer per yearSubscription; renewal $449.99. Volume discounts from 2 licenses. Also included in the ASP.NET and Blazor, DXperience and Universal subscriptions.source | 30-day evaluation; no free or non-commercial license. | Royalty-free: no per-server or run-time fees. |
Bundle size and dependencies
Every dependency is code you ship and a package you have to trust and keep updated. Infinite Table has none.
| Package | JS, min + gzip | CSS, min + gzip | Runtime dependencies | From other publishers |
|---|---|---|---|---|
| Infinite Table for React@infinite-table/infinite-react@10.1.4 | 145 kB | 5.7 kB | 0 | 0 |
| Infinite Table for Vue@infinite-table/infinite-vue@10.1.4 | 126 kB | 5.4 kB | 0 | 0 |
| DevExtreme React DataGriddevextreme-react@26.1.6 + devextreme@26.1.6 | 693 kB | 94.4 kB | 42list@babel/runtime@7.29.13, @devexpress/utils@2.1.4, @preact/signals-core@1.14.5, core-js@3.51.0, core-util-is@1.0.3, csstype@3.2.3, devexpress-diagram@2.2.31, devexpress-gantt@4.1.71, devextreme-quill@1.7.10, es6-object-assign@1.1.0, eventemitter3@4.0.7, fast-diff@1.3.0, immediate@3.0.6, inferno-create-element@8.2.3, inferno-vnode-flags@8.2.3, inferno@8.2.3, inherits@2.0.4, isarray@1.0.0, js-tokens@4.0.0, jszip@3.10.2, lie@3.3.0, lodash.clonedeep@4.5.0, lodash.isequal@4.5.0, lodash.merge@4.6.2, loose-envify@1.4.0, object-assign@4.1.1, opencollective-postinstall@2.0.3, pako@1.0.11, parchment@2.0.1, process-nextick-args@2.0.1, prop-types@15.8.1, quill-delta@5.1.0, react-is@16.13.1, readable-stream@2.3.8, rrule@2.8.1, safe-buffer@5.1.2, setimmediate@1.0.5, string_decoder@1.1.1, tslib@2.3.1, tslib@2.9.1, util-deprecate@1.0.2, zod@4.6.7 | 41 |
Measured on November 11, 2026 with the latest versions on npm. Runtime dependencies: every package that npm install adds besides the grid's own packages and the framework, including required peer dependencies. JS / CSS: esbuild 0.25.10 bundle of the minimal getting-started usage, minified, React or Vue left out, gzip level 9 (kB = 1,000 bytes). Fonts and images are not counted. Numbers include required peers such as a design system, so they are lower if your app already ships those. The measurement script is open source: run it to reproduce or update these numbers.
Framework support
| Framework | Infinite Tablesource | DevExtreme DataGridsource |
|---|---|---|
| React | Yes | Yes |
| Vue | Yes | Yes |
| Angular | No | Yes |
| ASP.NET | No | Yes |
| jQuery | No | Yes |
- Infinite Table: React 18+ (@infinite-table/infinite-react) and Vue 3.4+ (@infinite-table/infinite-vue), same features and version.
- DevExtreme DataGrid: ASP.NET Core and MVC wrappers come with the ASP.NET and Blazor subscription and higher.
Migrating from DevExtreme DataGrid
DevExtreme configures columns with nested <Column> elements; Infinite Table uses a columns object. Data, sorting and grouping move to <DataSource>.
DevExtreme DataGrid
import DataGrid, { Column } from 'devextreme-react/data-grid';
import 'devextreme/dist/css/dx.light.css';
type Car = { id: number; make: string; model: string; price: number };
const data: Car[] = [
{ id: 1, make: 'Tesla', model: 'Model Y', price: 64950 },
{ id: 2, make: 'Ford', model: 'F-Series', price: 33850 },
];
export function Cars() {
return (
<DataGrid dataSource={data} keyExpr="id" height={500}>
<Column dataField="make" caption="Make" sortOrder="asc" />
<Column dataField="model" caption="Model" width={200} />
<Column
dataField="price"
caption="Price"
cellRender={(cell) => <b>{cell.value}</b>}
/>
</DataGrid>
);
}Infinite Table
import { DataSource, InfiniteTable } from '@infinite-table/infinite-react';
import type { InfiniteTablePropColumns } from '@infinite-table/infinite-react';
import '@infinite-table/infinite-react/index.css';
type Car = { id: number; make: string; model: string; price: number };
const data: Car[] = [
{ id: 1, make: 'Tesla', model: 'Model Y', price: 64950 },
{ id: 2, make: 'Ford', model: 'F-Series', price: 33850 },
];
const columns: InfiniteTablePropColumns<Car> = {
make: { field: 'make', header: 'Make' },
model: { field: 'model', header: 'Model', defaultWidth: 200 },
price: {
field: 'price',
header: 'Price',
renderValue: ({ value }) => <b>{value}</b>,
},
};
export function Cars() {
return (
<div style={{ height: 500, display: 'flex' }}>
<DataSource<Car>
primaryKey="id"
data={data}
defaultSortInfo={{ field: 'make', dir: 1 }}
>
<InfiniteTable<Car> columns={columns} />
</DataSource>
</div>
| DevExtreme DataGrid | Infinite Table |
|---|---|
<Column dataField> | columns (an object keyed by column id) with field |
caption | header |
width | defaultWidth, or the columnSizing prop |
cellRender | renderValue or render |
keyExpr | primaryKey on <DataSource> |
sortOrder, sortIndex | defaultSortInfo, sortInfo on <DataSource> |
groupIndex, <Summary> | groupBy and aggregationReducers on <DataSource> |
<MasterDetail> | rowDetailRenderer |
CustomStore, remoteOperations | a data function on <DataSource>, with lazyLoad |
What DevExtreme DataGrid does well
- Part of a large UI suite for React, Angular, Vue and jQuery, with a TreeList, a PivotGrid and charts next to the grid. source
- Many filtering UIs: a filter row, Excel-style header filters, a search panel and a filter builder. source
- Five editing modes (row, cell, batch, form, popup) with validation. source
- Built-in remote operations: filtering, sorting, paging, grouping and summaries on the server. source
- Excel and PDF export with customizable cells. source
- Royalty-free distribution, licensed per developer only. source
The older DevExtreme Reactive React Grid (@devexpress/dx-react-grid) reached end-of-life in December 2025; DevExpress points users to the DevExtreme React components compared here. source
FAQ
Is DevExtreme free?
No. DevExpress sells DevExtreme as a per-developer subscription (DevExtreme Complete is $899.99 per developer per year) with a 30-day trial, and we found no free or non-commercial license. Infinite Table can be used commercially for free with a "Powered by Infinite Table" footer.
Does DevExtreme DataGrid support pivoting and tree data?
Not in the DataGrid itself: DevExtreme has separate PivotGrid and TreeList components. Infinite Table does grouping, pivoting and tree data in the grid.
What about the DevExtreme Reactive Grid?
The older DevExtreme Reactive React Grid (@devexpress/dx-react-grid) reached end-of-life in December 2025. This page compares the current DevExtreme React DataGrid (devextreme-react).
Is Infinite Table free to use?
Yes. Every feature is free to use, in any product and in production, as long as the "Powered by Infinite Table" footer stays visible. A license removes the footer and adds email support: $395 per developer per year, with volume discounts and no deployment or application licenses. See pricing.
How many dependencies does DevExtreme DataGrid have, compared to Infinite Table?
Infinite Table has 0 runtime dependencies: installing it adds one package. DevExtreme React DataGrid adds 42 (41 from other publishers), counting required peer dependencies but not React. Measured on November 11, 2026 with the latest versions on npm.
How big is DevExtreme DataGrid compared to Infinite Table?
Bundling the minimal getting-started usage with esbuild, minified and gzipped, without React: Infinite Table 145 kB of JavaScript, DevExtreme React DataGrid 693 kB. CSS is measured separately; the table above has both.
Try Infinite Table
npm i @infinite-table/infinite-react for React, or npm i @infinite-table/infinite-vue for Vue. Every feature is in the package.
Other comparisons
Sources
Sources and corrections
Every statement about another product links to the vendor's own documentation, pricing or license page. DevExtreme DataGrid facts were last verified on November 11, 2026. Prices are list prices as published; taxes, discounts and quotes can differ. Products change quickly, so please check the vendor's site before you buy.
Spotted something wrong or out of date? We'll fix it: open a correction issue, edit the data on GitHub or email us.
Official links for DevExtreme DataGrid: website, docs, pricing, license, repository.