Process sorting, filtering, and pagination on the server for faster loading of large tables.
Server-side Processing
Loading pages with very large tables (think: Tens of thousands of rows) can often be slow, as not only all the table data has to be sent from the server to the visitor’s browser but as the browser also has to interpret the table data, to make it available to features like sorting and filtering.
The “Server-side Processing” module in TablePress Max moves this work to the server, so that tables will be much faster for site visitors!
Feature description
As an example, try searching and paging in this very large table — it has more than 32,000 rows. Despite this large number of cells, it’s loading very fast and the visitor can still use it with ease. Note how it even supports the Column Filter Dropdowns feature module to create select dropdowns above the table!
Name | Year | Country | Sport | Time | Rate | Fee |
---|---|---|---|---|---|---|
Eric | 1986 | Sweden | Soccer | 05:25 | 40.4% | $7.14 |
Julia | 1991 | Germany | Basketball | 04:45 | 20.3% | $2.90 |
Adam | 2002 | Indonesia | Golf | 19:40 | 43.3% | $4.40 |
Kim | 1986 | Chile | Badminton | 12:50 | 85.7% | $3.47 |
Jackson | 1998 | Australia | Baseball | 06:09 | 66.7% | $6.85 |
Cade | 1986 | India | Badminton | 19:43 | 42.4% | $3.22 |
Keaton | 2003 | Costa Rica | Basketball | 10:31 | 40.0% | $5.88 |
Ray | 1999 | France | Gymnastics | 18:08 | 59.5% | $1.10 |
Omar | 1984 | Brazil | Tennis | 02:50 | 54.2% | $2.30 |
Maite | 1986 | Norway | Wrestling | 15:09 | 29.5% | $3.91 |
Automatic reloading
The Server-side Processing feature also supports automatically reloading the table in a configured interval, to ensure that the site visitor sees the latest table data. This can for example be useful to show things like up-to-date scores or results of a race or competition. This example table automatically refreshes every ten seconds, to show a (fictional) competition ranking (with automatic sorting by the “Points” column). Note how the data and time in the last row change automatically every ten seconds.
Name | Team | Points |
---|---|---|
Chris | 🟨 | 50 |
Bryce | 🟩 | 34 |
Alex | 🟥 | 10 |
Last update: | Sep 15, 2025, 12:02:59 |
Usage instructions
To use these features with your tables, activate the “Server-side Processing” feature module on the “Modules” screen of TablePress Max. Then, configure the desired options in the “Server-side Processing” section on the table’s “Edit” screen.

Note that the Alphabet Search, Cell Highlighting, Custom Search Builder, Fuzzy Search, Row Highlighting, and Search Panes can not be used together with Server-side Processing. For using these, instead choose the alternative for loading large tables faster: The Advanced Loading feature module uses a modern data format for loading the table faster.
Configuration parameters
To configure this module’s features, you can also use these configuration parameters in the “TablePress Table” block, the Elementor widget, or in the Shortcode that you are using to embed the table:
Module | Slug | Configuration parameter | Name | Description | Type | Default value | |
---|---|---|---|---|---|---|---|
Server-side Processing | datatables-serverside-processing | datatables_serverside_processing | Server-side Processing | Whether to load the table data dynamically via the TablePress REST API, for improved loading speed. | boolean (true or false ) | false |
|
Server-side Processing | datatables-serverside-processing | datatables_serverside_processing_cached_pages | Server-side Processing Cached pages | Number of pages to cache to reduce requests to the server. | integer | 0 |
|
Server-side Processing | datatables-serverside-processing | datatables_serverside_processing_periodic_refresh | Server-side Processing Periodic refresh | Number of seconds after which the table data is automatically reloaded. | integer | 0 |
|
Server-side Processing | datatables-serverside-processing | datatables_serverside_processing_request_type | Server-side Processing Request Type | Request type for the HTTP/REST request. This is only a Shortcode parameter, but not part of the user interface. | enum (GET or POST ) | GET |
|
Server-side Processing | datatables-serverside-processing | datatables_serverside_processing_html_rows | Server-side Processing HTML Rows | This is only a Shortcode parameter, but not part of the user interface. By default, the value of the datatables_paginate_entries value is used. | string | "" (empty string) |