# Campaign Filters
These filter hooks let you customize campaign data, processing behavior, and scheduling.
### `fluent_crm/campaign_data`
Filter the [Campaign](/database/models/campaign) model right before the campaign-detail endpoint
returns it. Runs on read only — it does not affect what is stored or sent.
**Parameters**
- `$campaign` [Campaign Model](/database/models/campaign)
**Usage:**
```php
add_filter('fluent_crm/campaign_data', function($campaign) {
// Inject custom data into the campaign editor
$campaign->custom_meta = 'value';
return $campaign;
});
```
**Source:** `app/Http/Controllers/CampaignController.php`
---
### `fluent_crm/campaign_processing_stat_chunk`
Filter how many emails are processed per pass when the campaign screen polls for delivery stats.
Despite the name, this actually sends email — the stat endpoint drives the processor.
**Parameters**
- `$chunk` INT - Default `30`. Values below `1` are clamped to `1`.
- `$campaign` [Campaign Model](/database/models/campaign)
**Usage:**
```php
add_filter('fluent_crm/campaign_processing_stat_chunk', function($chunk, $campaign) {
return 100;
}, 10, 2);
```
**Source:** `app/Http/Controllers/CampaignController.php`
---
### `fluent_crm/campaign_processing_stat_runtime_seconds`
Filter the max seconds the campaign stat-check request may spend processing emails.
**Parameters**
- `$seconds` INT - Default `10`. Values below `1` are clamped to `1`.
- `$campaign` [Campaign Model](/database/models/campaign)
**Usage:**
```php
add_filter('fluent_crm/campaign_processing_stat_runtime_seconds', function($seconds, $campaign) {
return 30;
}, 10, 2);
```
**Source:** `app/Http/Controllers/CampaignController.php`
---
### `fluent_crm/five_minute_campaign_processing_chunk`
Filter the number of campaign emails materialized per chunk during the 5-minute cron batch.
**Parameters**
- `$chunk` INT - Default `50`. Values below `1` are clamped to `1`.
- `$campaign` [Campaign Model](/database/models/campaign) - the campaign being processed
**Usage:**
```php
add_filter('fluent_crm/five_minute_campaign_processing_chunk', function($chunk, $campaign) {
return 100;
}, 10, 2);
```
::: tip
The run-time budget for this loop is not filterable here — it is
[`fluent_crm/max_run_time`](/hooks/filters/admin-and-dashboard#fluent-crm-max-run-time) minus 5
seconds.
:::
**Source:** `app/Hooks/Handlers/Scheduler.php`
---
## Sequences & Recurring Campaigns
### `fluent_crm/sequence_tracker_batch_limit`
Filter the batch size for processing email sequence tracking records.
**Parameters**
- `$limit` INT - Default `200`
**Usage:**
```php
add_filter('fluent_crm/sequence_tracker_batch_limit', function($limit) {
return 500;
});
```
**Source:** `fluentcampaign-pro/app/Hooks/Handlers/EmailScheduleHandler.php`
---
### `fluent_crm/recurring_campaign_batch_limit`
Filter how many recurring campaigns are processed in a single scheduled batch.
**Parameters**
- `$limit` INT - Default `10`
**Usage:**
```php
add_filter('fluent_crm/recurring_campaign_batch_limit', function($limit) {
return 20;
});
```
**Source:** `fluentcampaign-pro/app/Hooks/Handlers/RecurringCampaignHandler.php`
---
### `fluent_crm/campaign_action_limit`
Filter the number of subscribers processed per request during email campaign processing.
**Parameters**
- `$limit` INT - Default `50`
**Usage:**
```php
add_filter('fluent_crm/campaign_action_limit', function($limit) {
return 100;
});
```
**Source:** `fluentcampaign-pro/app/Http/Controllers/CampaignsProController.php`
---
### `fluent_crm/email_campaign_export_data`
Filter email campaign data during export operations.
**Parameters**
- `$campaignData` Array - exported campaign data
- `$campaign` Campaign Model
**Usage:**
```php
add_filter('fluent_crm/email_campaign_export_data', function($campaignData, $campaign) {
// Modify export data
return $campaignData;
}, 10, 2);
```
**Source:** `fluentcampaign-pro/app/Hooks/Handlers/DataExporter.php`
---
### `fluent_crm/sms_campaign_export_data`
Filter SMS campaign data during export operations.
**Parameters**
- `$campaignData` Array - exported SMS campaign data
- `$campaign` Campaign Model
**Usage:**
```php
add_filter('fluent_crm/sms_campaign_export_data', function($campaignData, $campaign) {
return $campaignData;
}, 10, 2);
```
**Source:** `fluentcampaign-pro/app/Hooks/Handlers/DataExporter.php`