Overview
The Syncfusion React Data Grid is a high-performance data table component for displaying and managing tabular data in React applications. It includes data binding, inline and dialog editing, sorting, Excel-like filtering, paging, grouping, aggregation, column customization, and row selection. Developers can also export grid data to Excel, CSV, and PDF formats.
Interact with the Live React Data Grid
Runs in-browser. No installation required.
Why choose the Syncfusion React Data Grid component?
High performance
Render and interact with large datasets smoothly using row and column virtualization. The React Data Grid is optimized for fast loading, scrolling, sorting, filtering, and real-time data updates.
Seamless data binding
Bind this React data table to local or remote data sources, including JSON, REST APIs, OData, and custom services. Use the built-in data manager to handle querying, data operations, and communication with remote endpoints.
AI-Assisted Development
Build sophisticated grid experiences faster with the Agentic UI Builder and Syncfusion Agent Skills. Generate layouts, column configurations, filtering, CRUD workflows, and dashboard interfaces with minimal manual effort.
Attractive customizable themes
Create a cutting-edge design with built-in themes such as Fluent, Tailwind CSS, Bootstrap, Material, and Fabric. Utilize the online Theme Studio tool to customize themes easily.
Easy export and printing
Export the Data Grid in various file formats, including PDF, Excel, and CSV. Print all the rows, regardless of the number of pages, as well as just the currently viewed page.
Globalization and localization
Users from different locales can use the component by formatting dates, currency, and numbering to suit preferences.
AI-assisted development
Build feature-rich React DataGrid experiences faster
Accelerate grid development with Syncfusion AI tools that turn requirements into fully configured datagrid experiences with minimal manual setup.
Agentic UI Builder
Turn prompts into ready-to-use UI screens, layouts, and workflows with Syncfusion React components.
Example Prompt Create an order management dashboard with a datagrid, charts, filters, and export actions.
Agent Skills
Accelerate development with Syncfusion AI Agent Skills for faster implementation and integration.
Example Prompt Generate a React DataGrid with grouping, Excel-style filtering, toolbar actions, and PDF export.
AI Coding Assistant
Accelerate development with AI that generates, configures, and troubleshoots component code directly in your IDE.
Example Prompt Show how to bind remote data and enable virtualization in the Syncfusion React DataGrid.
AI-ready Data Grid for faster insights
Our Data Grid comes AI-ready out of the box. Easily extend it with semantic search, anomaly detection, or any other AI operation you need. Get fast answers and smarter data exploration, all in one grid.
-
Semantic search: Plug in your preferred NLP model to let users query with natural phrases, no exact keywords required.
- See how to add semantic search
-
Anomaly detection: Connect an ML service to find unusual trends or errors quickly and keep business on track.
- See how to add anomaly detection
React Data Grid code example
Add the React Data Grid component to your application with a few lines of TSX or JSX. The following example demonstrates how to bind a data source and configure columns in a React data table.
import { GridComponent, ColumnsDirective, ColumnDirective } from '@syncfusion/ej2-react-grids';
import { data } from './datasource';
import './App.css';
function App() {
return (
<GridComponent dataSource={data}>
<ColumnsDirective>
<ColumnDirective field="OrderID" headerText="Order ID" width="180" textAlign="Right" ></ColumnDirective>
<ColumnDirective field="CustomerName" headerText="Customer Name" width="150" ></ColumnDirective>
<ColumnDirective field="OrderDate" headerText="Order Date" width="130" format="yMd" textAlign="Right" />
<ColumnDirective field="Freight" width="120" format="C2" textAlign="Right" />
<ColumnDirective field="ShipCountry" headerText="Ship Country" width="150" ></ColumnDirective>
</ColumnsDirective>
</GridComponent>
);
}
export default App;export let data: Object[] = [
{ OrderID: 10248, CustomerName: 'Yang Wang', OrderDate: new Date('2025-06-25'), Freight: 32.38, ShipCountry: 'France' },
{ OrderID: 10249, CustomerName: 'Ana Trujillo', OrderDate: new Date('2025-06-25'), Freight: 11.61, ShipCountry: 'Germany' },
{ OrderID: 10250, CustomerName: 'Antonio Moreno', OrderDate: new Date('2025-07-20'), Freight: 65.83, ShipCountry: 'Brazil' },
{ OrderID: 10251, CustomerName: 'Thomas Hardy', OrderDate: new Date('2025-08-02'), Freight: 41.34, ShipCountry: 'France' },
{ OrderID: 10252, CustomerName: 'Christina Berglund', OrderDate: new Date('2025-08-24'), Freight: 51.3, ShipCountry: 'Belgium' }
];
Performance
Manage and display large datasets with built-in performance features. The Data Grid uses DOM virtualization to render only visible records, loads data on demand during navigation, and supports Paging, Infinite Scrolling, Virtual Scrolling, and Server-Side Data Processing for large-scale data operations.
Sorting, filtering and search
Find and organize records using built-in Sorting, Filtering, and Search features. Sort data in ascending or descending order with Multi Sorting support across multiple columns. Filter options include Excel-like Filtering, Check Box Filtering, Menu Filtering, and Filter Bar, with filter operators for refining results based on application requirements.


Create, edit, delete
Manage records with built-in create, edit, and delete operations. Add new records, update existing data, and remove records using Cell Editing, Inline Editing, Dialog Editing, or Batch Editing modes. Support for built-in validation rules and custom validation rules helps maintain data accuracy during data entry and record updates. Server-side CRUD operations are supported for remote data sources.
Grouping and aggregation
Organize related records and summarize data with built-in grouping and aggregation features. Group records by one or more columns, display caption and footer summaries, and calculate totals, counts, averages, and custom aggregate values. Support for group-level summaries and custom aggregation helps analyze categorized data and review key metrics across datasets.


Chart integration
Visualize Data Grid records with built-in chart integration features. Create charts from selected records, choose from multiple chart types, and customize chart appearance for analysis and reporting. Export charts as PDF or image files to share insights across datasets.
Export and print
Export Data Grid records to Excel, PDF, and CSV formats or print them directly from the browser. Export grouped records, summaries, and selected data while preserving layouts, formatting, and data structure across generated output. Support for customizable export settings and browser printing helps simplify reporting and data distribution.


Customization and templates
Customize Data Grid layouts using templates for columns, rows, headers, and detail views. Display custom content, interactive elements, and expanded record details using column, row, header, and detail templates. Support for flexible layouts helps present information in formats suited to different data and workflows.
Columns
Configure columns with formatting, visibility, sizing, and layout customization options. Resize, reorder, create multi-level headers, apply templates, pin, and show or hide columns to customize data presentation. Support for flexible column layouts helps organize and display information for different data structures and viewing needs.


Rows
Control row appearance and behavior through flexible customization and layout options. Reorder, pin, span, customize rows, adjust row height, and display additional information with detail and row templates. Support for flexible row layouts helps arrange, prioritize, and present records for different data and workflow requirements.
Data binding
Connect the Data Grid to local and remote data sources, including APIs, JSON, and OData services. Bind data from local collections, web services, and remote endpoints while managing data operations across different sources. Support for flexible data integration helps bring information together within a single data view.


Localization and globalization
Adapt the Data Grid for different languages, regions, and cultural preferences. Apply locale-specific formatting for dates, numbers, currencies, and interface content, and switch between languages with dynamic locale updates. Support for localization, globalization, and RTL layouts helps deliver region-specific user experiences.
Web standards
Support accessible data interaction with keyboard navigation, screen readers, and RTL layouts. Include accessibility compliance, touch support, localization capabilities, and built-in protections against common web security threats. Support for accessibility and security standards helps deliver consistent experiences across users, devices, and regions.


Theme customization
Customize the Data Grid with built-in themes, brand styles, and appearance settings. Apply light and dark themes, customize colors and styles, and create branded experiences with custom themes and sizing modes. Support for flexible theming options helps align data presentation with different design systems and visual preferences.
Row, cell and column selection
Choose rows, cells, and columns through single, multiple, range, and checkbox selection modes. Select and manage records across sorting, filtering, paging, and other data operations with persistent selection support. Selection options help streamline record review, comparison, and data management workflows.


Adaptive UI layout
Adapt Data Grid layouts for mobile devices and smaller screens using responsive and adaptive UI features. Display filtering, sorting, searching, and editing interfaces optimized for touch interactions and limited screen space. Support for adaptive layouts helps maintain usability across different screen sizes and devices.
Grid interaction & layout features

Row height
Row height is a major factor when displaying records in the viewport. It is easily customizable and can also be set conditionally.

Copy to clipboard
The clipboard allows users to copy data from selected rows or cells into it. The Ctrl+C and Ctrl+Shift+H key combinations copy data with and without headers, respectively.

Context menu
Perform various actions in a Data Grid using the pop-up menu that appears when the cell, header, or pager is right-clicked. In addition to built-in default menu items, custom context menu items can be added.

Width and height
Set the width and height properties to change the size of the Data Grid. When the content overflows the grid element, horizontal and vertical scrollbars will appear. To fill the Data Grid’s parent container, simply set the height and width to 100%.

Stacked headers
Stacked headers allow grouping and visualizing column headers in a stacked manner. The number of columns that can be stacked is unlimited. Perform all Data Grid actions even when the columns are stacked.
Accessibility & Responsive User Experience

Keyboard navigation
The React Data Grid ensures that every cell is accessible using the keyboard. Major features like sort, select, and edit can be performed using keyboard commands alone; no mouse interaction is required. This helps in creating highly accessible applications using this component.

Screen reader
The React Data Grid view has complete WAI-ARIA accessibility support. Its UI includes high-contrast visual elements that help visually impaired people to have the best viewing experience. Also, valid UI descriptions are easily accessible through assistive technologies such as screen readers.

Right to left (RTL)
Right-to-left rendering allows users to display the text and layout of the Data Grid from right to left. This improves the user experience and accessibility for RTL languages.

Touch support
User-friendly touch gestures and an interactive UI design provide the best user experience. All React Data Grid features work on touch devices with zero configuration.

Responsive pager
The React Data Grid pager acts intelligently and changes its complete UI responsively based on the dimension. Its optimized design provides the best UI interaction on different devices.
Not sure how to create your first React Data Grid? Our tutorial videos and documentation can help.
I’d love to watch it now I’d love to read it nowDiscover Syncfusion’s Complete React Component Ecosystem
Explore over 140+ React UI components featuring established, production-ready controls and the latest pure React components built natively for modern web app development.
-
React Components
-
Pure React Components
-
SMART COMPONENTSGRIDSDATA VISUALIZATIONDROPDOWNSFILE VIEWERS & EDITORSBUTTONSINTERACTIVE CHATINPUTSNAVIGATIONFORMSNOTIFICATIONS
-
GRIDSDATA VISUALIZATIONNAVIGATION
Standalone UI SDKs
Integrate the DataGrid, Chart, Scheduler, Gantt, Rich Text Editor, File Manager, and Diagram UI components into applications to enable rich interaction and visualization, delivering a seamless user experience.
Document Solutions
Integrate the PDF Viewer, DOCX Editor, Spreadsheet Editor, and document-processing libraries into the React applications to enable a smooth user experience.
Frequently Asked Questions
Why should you choose the Syncfusion® React DataGrid?
The Syncfusion React DataGrid offers the following features:
Millions of records load in just a second.
- Mobile-first design that adapts to any resolution.
Flexible data binding with support to use local and remote data sources such as JSON, RESTful services, OData services, and WCF services.
Out-of-the-box, Excel-like filtering and grouping options.
Data exporting options like PDF, CSV, and Excel.
Simple configuration and API.
- Support for all modern browsers.
Expansive learning resources such as demos, documentation, and videos let you get started quickly with the React Data Grid.
Where can I find the Syncfusion React Data Grid demo?
You can find our React Data Grid demo here. It demonstrates how to render and configure the Data Grid.
What is a React Data Grid?
How do you enable filtering in the React Data Grid?
To enable filtering in the Syncfusion® React Data Grid, set the allowFiltering property to true and inject the Filter module. This renders a filter bar beneath the column headers, allowing users to enter filter criteria. The Data Grid offers multiple filtering modes, which are configurable using the filterSettings.type property.
What’s the best way to handle large datasets in a React Data Grid?
The best way to handle large datasets is by using paging, virtual scrolling, and infinite scrolling. These options optimize performance by rendering only visible records and fetching data on demand as users scroll or navigate through the grid.
What are the types of Data Grid available in React?
Syncfusion’s React Data Grid supports basic grid, virtual grid, hierarchical grid, and Excel‑like grid, each optimized for high performance, scalability, and customization.
Is the Syncfusion React Grid responsive?
Yes. The Syncfusion React Data Grid is fully responsive by default, adapting to various screen sizes and supporting mobile‑friendly layouts.
What is the difference between the React Data Grid and a basic data table?
A basic React data table primarily displays tabular data. The React Data Grid provides more advanced functionality, such as inline editing, Excel-like filtering, grouping, aggregation, virtualization, frozen columns, and data exporting.
Can I download and utilize the Syncfusion React Data Grid for free?
No, this is a commercial product and requires a paid license. However, a free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue, 5 or fewer developers, and 10 or fewer total employees.
How do I get started with Syncfusion React Data Grid?
A good place to start would be our comprehensive getting started documentation.
What are the features of the React Data Grid?
The React Data Grid offers features like sorting, filtering, pagination, editing, aggregates, grouping, exporting to Excel/PDF, column resizing, and virtualization.
How can sorting be implemented in a React Data Grid?
Sorting can be enabled in the Data Grid component by setting the allowSorting property to true and injecting the Sort module. You can define columns with sortable fields and customize sorting using the sortSettings.
Is real-time data supported in a React Data Grid?
Yes, the grid supports real-time data updates through WebSocket, SignalR, or polling. You can refresh the grid or update specific rows dynamically to reflect changes in the data source.
How do I add a Data Grid in React?
Install the Syncfusion React Data Grid package using npm, then import the component and configure it within your React application.
What is an Excel‑like grid in React?
The Syncfusion React Data Grid offers an Excel‑like grid experience with features such as cell editing, formulas, copy‑paste, keyboard navigation, and more, closely mimicking Excel‑style interactions within React applications.
Our Customers Love Us
Transform your applications today by downloading our free evaluation version
No credit card required | 3M+ downloads
Awards
Greatness—it’s one thing to say you have it, but it means more when others recognize it. Syncfusion® is proud to hold the following industry awards.
Recent activities in the React Data Grid tutorials and blogs
The React Data Grid tutorial videos and blog posts will guide you in building your first app with React components. They provide problem-solving strategies, describe features and functionalities, announce new feature releases, explain best practices, and showcase example scenarios. Explore our latest posts on our blog and tutorial video channels for React Data Grid updates.