Before you start
What your WordPress site needs before you install the ChangeTrace plugin.
Five minutes of checking here saves an hour of debugging later. The two version requirements in particular are not enforced by the plugin — it will not warn you, it will simply break.
Requirements
| Requirement | Minimum | Where to check |
|---|---|---|
| WordPress | 6.2 | Tools → Site Health → Info → WordPress |
| PHP | 8.1 | Tools → Site Health → Info → Server |
| WP-Cron | Must be running | See below |
| Outbound HTTPS | Must be allowed | See below |
| WooCommerce | Optional | Only needed for sales tracking |
| Easy Digital Downloads | Optional | Only needed for sales tracking |
There is no version guard
The plugin declares WordPress 6.2 and PHP 8.1 in its header, but nothing in the code checks at runtime. On an older PHP version it will fatal on activation rather than deactivating politely. Check first.
WP-Cron has to be running
This is the single most common reason a correctly-installed plugin sends nothing.
ChangeTrace uses two scheduled WordPress jobs: an hourly heartbeat, and a queue flush every five minutes. Both rely on WP-Cron, which WordPress triggers when someone visits your site.
You have a problem if either of these is true:
DISABLE_WP_CRONis set totrueinwp-config.phpand no real cron job replaces it.- Your site gets almost no traffic, so WP-Cron rarely fires.
If you disabled WP-Cron in favour of a server cron job, that is fine — just make sure the server cron is actually running, at least every five minutes:
*/5 * * * * curl -s https://yourstore.com/wp-cron.php?doing_wp_cron > /dev/nullNothing in ChangeTrace warns you when WP-Cron is stalled. The symptom is: connection succeeds, status screen looks fine, and no data ever appears in the dashboard.
Outbound HTTPS has to be allowed
Your server needs to reach api.change-trace.com on port 443. Managed hosts occasionally block
outbound requests, and some sites set WP_HTTP_BLOCK_EXTERNAL in wp-config.php.
If that constant is set, add ChangeTrace to the allow list:
define( 'WP_HTTP_BLOCK_EXTERNAL', true );
define( 'WP_ACCESSIBLE_HOSTS', 'api.change-trace.com,app.change-trace.com' );You will know this is the problem if connecting fails with "This site could not reach the ChangeTrace API…".
WooCommerce and EDD are optional
ChangeTrace works without either. You still get change tracking, error tracking and uptime monitoring — you just have no revenue or orders to compare them against, so no sales-drop incidents.
If you run both, both are tracked. They are treated as equals, each with its own revenue and order figures, and either can trigger its own incident.
What you will need an account for
A free ChangeTrace account, which you create during the connect step — you do not need one in advance. The Free plan covers one site with 7 days of history.
{ }For developers
Handy wp-config.php overrides, mostly for staging and self-hosted setups:
define( 'CHANGETRACE_API_BASE_URL', 'https://api.change-trace.com' );
define( 'CHANGETRACE_APP_URL', 'https://app.change-trace.com' );
define( 'CHANGETRACE_PRIVACY_URL', 'https://change-trace.com/privacy-policy' );
define( 'CHANGETRACE_TERMS_URL', 'https://change-trace.com/terms-of-service' );Each has a matching filter (changetrace_api_base_url, changetrace_app_url, and so on). See
For developers.

