Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: Configuration Language Lock 1.0.2 Minor update available for module config_language_lock (1.0.2). Release: Canvas Override 1.0.1 Minor update available for module canvas_override (1.0.1). Release: Media Remote Image 8.x-1.2 Minor update available for module media_entity_remote_image (8.x-1.2). Release: IDNA Convert Service (punycode) 2.0.4 Minor update available for module idna (2.0.4). Release: Bootstrap Cloud 7.1.3 Minor update available for theme bootstrap_cloud (7.1.3). Release: Token Browser 1.0.2 Minor update available for module token_browser (1.0.2). Release: Varbase Project 11.0.8 Minor update available for module varbase_project (11.0.8). Release: Media Remote Image 2.0.0-beta1 First beta version released for module media_entity_remote_image (2.0.0-beta1). Usage Milestone: Term CSV Export Import Module term_csv_export_import crossed 1,000 active installs. Security Coverage: Module Scout Module module_scout now has official Drupal security advisory coverage.

This module provides a Views sort plugin that uses reinforcement learning to A/B and multivariate test the order of content in any Drupal View. It automatically shifts traffic to higher-performing items based on visitor clicks, offering continuous optimization for dozens or hundreds of items simultaneously without manual intervention. The system supports universal entity types and tracks interactions anonymously for GDPR compliance.

This module is part of the RL module ecosystem and included in DXPR CMS.

Advanced A/B testing for content optimization. Automatically tests all your content simultaneously using Thompson Sampling machine learning to surface winners while giving new content fair exposure.

You need RL Sorting if

  • You want to A/B test your content without manual setup
  • You need to test dozens or hundreds of content pieces simultaneously
  • You want content optimization that adapts automatically
  • You need to balance promoting winners with discovering new high-performers

Features

  • Thompson Sampling algorithm for intelligent A/B testing:
    • Multi-variant testing of unlimited content pieces
    • Zero setup - no manual configuration or statistical analysis
    • Continuous learning with automatic winner promotion
    • Fair exposure for new content
  • Universal entity support (nodes, users, taxonomy terms, media, custom entities)
  • Views integration - simple sort plugin for any Views-compatible data source
  • Time-based filtering for seasonal/campaign content
  • Performance optimized with configurable caching
  • Privacy-first JavaScript tracking - only anonymous statistics, GDPR compliant

Post-installation

  1. Install and enable the RL (Reinforcement Learning) module
  2. Configure permissions at /admin/people/permissions
  3. Edit any View display and add "RL Sorting" as the only sort criteria
  4. Configure cache refresh rate and time window options
  5. Save - content optimization begins immediately

From setup to results

  1. Configure: add RL Sorting as the sort criterion on any Views display and save
  2. Collect: as visitors browse the page, the module silently tracks impressions (content shown) and conversions (content clicked)
  3. Learn: Thompson Sampling builds a reward distribution for each content item, balancing exploitation of known winners with exploration of newer content
  4. Optimise: the sort order gradually shifts toward higher-performing content, with top positions going to items visitors engage with most
  5. Analyse: the companion RL module provides experiment dashboards including the 3D Posterior Landscape chart, showing how each content variant's performance converges over time

Prefer a turnkey demo site?

Spin up DXPR CMS - Drupal pre-configured with DXPR Builder, DXPR Theme, RL Sorting module, and security best practices. DXPR CMS is a marketing CMS built for teams that need content optimization out of the box.

Get DXPR CMS »

On the frontend, visitors see content ordered by the algorithm's learned preferences; high-performing items rise to the top while new content still receives fair exposure:

Security & Privacy

  • GDPR Compliant - Only anonymous interaction statistics are collected
  • No Personal Data - No user identification, cookies, or tracking of individuals
  • Local Data Storage - All data stays on your Drupal site, no external services

Additional requirements

This module requires:

FAQ

How does RL Sorting decide the content order?

RL Sorting uses Thompson Sampling, a multi-armed bandit algorithm, to rank content. Each piece of content has a reward distribution based on click-through data. On each page view, the algorithm samples from these distributions and ranks items by score, continuously shifting top positions toward content that visitors engage with most.

Does RL Sorting work with any Drupal View?

Yes. Add "RL Sorting" as a sort criterion to any Views display. The module registers itself as a standard Views sort plugin, so it works with any Views-compatible data source: nodes, taxonomy terms, users, media, or custom entities. Remove other sort criteria and let RL Sorting handle the ordering.

Does RL Sorting require manual A/B test configuration?

No. Unlike traditional A/B testing tools that require defining test variants and run durations, RL Sorting tests all content items simultaneously with zero manual setup. Add the sort plugin to a View, save, and optimisation begins on the next page view. New content gets fair initial exposure through Thompson Sampling's built-in exploration.

Does RL Sorting set cookies or track individual users?

No. RL Sorting tracks only anonymous interaction statistics: impressions (content shown) and conversions (content clicked). It does not set cookies, store user IDs, or create visitor profiles. All data stays in your Drupal database, making it GDPR-friendly by design.

Related Modules

  • Reinforcement Learning (RL) - Required. Thompson Sampling engine that powers all scoring, experiment tracking, and reporting used by RL Sorting
  • Views - Required. RL Sorting registers itself as a Views sort plugin and hooks into the Views rendering pipeline
  • DXPR CMS - Ships RL Sorting pre-configured alongside DXPR Builder and DXPR Theme for a turnkey content optimization setup

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
1
Tracked since
Apr 2026
Latest release
4 months ago
Releases (12 mo)
1 ▲ from 0
Maintenance
Active

Releases

Version Type Core Release date
1.0.0-beta1 Pre-release 10–11 Apr 29, 2026