---
title: "Performance & Database"
description: "##### Dashboard Loads Slowly PulseRank dashboard takes 5-10+ seconds to load **Diagnosis:** 1. Check database size: Settings → System Health → Database Tables 2. Look for very large `wp_pulserank_hits` table (> 500MB) **1. Reduce Data Retention** PulseRank → Settings → General → Data…"
url: "https://pulserank.ai/docs/performance-database/"
updated: "2026-01-09"
category: Troubleshooting
---

# Performance & Database

##### Dashboard Loads Slowly

PulseRank dashboard takes 5-10+ seconds to load

**Diagnosis:**

1. Check database size: Settings → System Health → Database Tables
2. Look for very large `wp_pulserank_hits` table (> 500MB)

**1. Reduce Data Retention**

PulseRank → Settings → General → Data Retention: Change from 365 days to 90 or 60 days. Click "Run Manual Cleanup" to delete old data immediately.

**Expected Impact:** 365 days → 90 days = ~70% size reduction

**2. Add Database Indexes**

```
SHOW INDEX FROM wp_pulserank_hits;
```

Should have indexes on: timestamp, bot_name, channel, referral_source

**If missing:**

```
ALTER TABLE wp_pulserank_hits ADD INDEX timestamp (timestamp);
```

**3. Optimize Tables**

```
OPTIMIZE TABLE wp_pulserank_hits;
OPTIMIZE TABLE wp_pulserank_aggregates_daily;
OPTIMIZE TABLE wp_pulserank_aggregates_hourly;
```

**4. Enable Object Caching**

Use Redis or Memcached. Install Redis Object Cache plugin. PulseRank API results cached for 5 minutes.

##### High Database Growth Rate

Database growing by 100MB+/week

**Cause:** Very high AI bot traffic (good problem!)

**Solutions:**

- **Aggressive Retention:** Set to 30 days only. Enable automatic cleanup (daily).
- **Exclude Low-Value Bots:** Future feature: bot filtering by category. Currently tracks all bots.
- **Archive Old Data:** Export via API before cleanup:

```
curl -u user:pass "https://site.com/wp-json/pulserank/v1/reports/raw?days=365&limit=1000" > archive.json
```

**Cron Jobs Not Running**

Settings → System Health shows 'Cron: Not Running'

**Impact:**

- Daily aggregation doesn't run (reports stale)
- Weekly cleanup doesn't run (database grows)
- Email reports don't send

**1. WP-Cron Disabled**

Check wp-config.php for `define( 'DISABLE_WP_CRON', true );`

**If found, set up server cron:**

```
# cPanel: Cron Jobs → Add new cron
# Or SSH/Linux:
crontab -e

# Add line:
*/15 * * * * wget -q -O - https://yoursite.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
```

**2. No Site Traffic**

WP-Cron triggers on page visits. Low-traffic sites: cron jobs may not run. Solution: Use server cron (above)

**3. Check Schedule**

Install WP Crontrol plugin → Tools → Cron Events. Look for: pulserank_daily_event (3 AM daily), pulserank_weekly_event (Sunday 4 AM), pulserank_send_email_report (your schedule)
