Title: Server-side Processing
Author: Tobias Bäthge
Published: December 2, 2022
Last modified: September 15, 2025

---

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](https://tablepress.org/modules/datatables-columnfilterwidgets/)
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 |

[Use this feature with TablePress Max today](https://tablepress.org/pricing/?output_format=md)

### 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](https://tablepress.org/modules/row-order/)
by the “Points” column). Note how the data and time in the last row change automatically
every ten seconds.

  |  Name | Team | Points |  
   |  Bryce | 🟩 | 96 |  
 |  Chris | 🟨 | 96 |  
 |  Alex | 🟥 | 14 |  
 |  **Last update:** | **Apr 23, 2026, 10:16:48** |  |

## 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.

![Screenshot of the "Server-side Processing" configuration section in TablePress
Max.](https://tablepress.org/wp-content/uploads/2025/09/datatables-serverside-processing.png)

The “Server-side Processing” configuration section in TablePress Max.

Note that the [Alphabet Search](https://tablepress.org/modules/datatables-alphabetsearch/),
[Cell Highlighting](https://tablepress.org/modules/cell-highlighting/), [Custom Search Builder](https://tablepress.org/modules/datatables-searchbuilder/),
[Fuzzy Search](https://tablepress.org/modules/datatables-fuzzysearch/), [Row Highlighting](https://tablepress.org/modules/row-highlighting/),
and [Search Panes](https://tablepress.org/modules/datatables-searchpanes/) can not
be used together with Server-side Processing. For using these, instead choose the
alternative for loading large tables faster: The [Advanced Loading](https://tablepress.org/modules/datatables-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](https://tablepress.org/faq/configuration-parameter-reference/)
in the “TablePress Table” [block](https://tablepress.org/faq/documentation-tablepress-table-block/),
the Elementor widget, or in the [Shortcode](https://tablepress.org/faq/documentation-shortcode-table/)
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) |

The “Server-side Processing” feature module is part of the [**TablePress Max plan**](https://tablepress.org/pricing/?output_format=md).

**On this page**

 1. [Feature description](https://tablepress.org/modules/datatables-serverside-processing/#feature-description)
 2.  a. [Automatic reloading](https://tablepress.org/modules/datatables-serverside-processing/#automatic-reloading)
 3. [Usage instructions](https://tablepress.org/modules/datatables-serverside-processing/#instructions)
 4. [Configuration parameters](https://tablepress.org/modules/datatables-serverside-processing/#configuration)