SlimStat 6 launchfrom $34.30/yr1 site · 5 sites $83.30 · unlimited sites $139.3030% off every planEnds Nov 16 (UTC)

Troubleshooting

Fix Missing Or Wrong Country Codes

Applies to SlimStat 6.0.0 · checked

A missing country can come from the provider, its data, consent settings or the IP reaching WordPress. First check a new eligible test visit; a provider change does not bulk-update historical rows.

Open SlimStat → Settings → Tracker. Confirm Geolocation Provider is not Disabled. Geolocation runs only when the tracker’s PII permission check allows it. Depending on your consent configuration, a visitor can be recorded without location or tracking can be refused entirely. Do not disable consent controls to make a country appear; test the intended acceptance and refusal paths.

IP anonymization and hashing do not automatically prevent the initial lookup: the tracker preserves an address for geolocation before transforming the stored IP. That does not override consent. See consent setup.

DB-IP or MaxMind: check the local file

  1. Confirm your selected provider and precision under Settings → Tracker.
  2. Use Check Database to check whether the expected file exists.
  3. If it is missing, use Update Database and inspect the GeoIP update/error information under Settings → Maintenance.
  4. Confirm a new permitted visit records a location after the update.

Check Database checks file presence, not a successful lookup. A corrupt, unreadable or unsuitable file can still need replacement. A Maintenance update timestamp of Never means no successful download is recorded; it does not rule out a manually uploaded or restored file.

DB-IP uses dbip-city-lite.mmdb. MaxMind uses GeoLite2-Country.mmdb or GeoLite2-City.mmdb, so changing precision can require a different download. The normal directory is wp-content/uploads/wp-slimstat/, subject to the upload configuration and path filter. Configure the provider and database.

Cloudflare: check the request reaching the origin

Cloudflare Header uses no local database. It needs CF-Ray and a valid country header on the tracking request. Test the proxied public hostname, not a direct-origin URL. Enable Cloudflare’s location headers as described in the Cloudflare setup guide.

SlimStat checks header presence; this is not verification of the connecting proxy’s identity. Your origin and proxy configuration must prevent clients from supplying trusted forwarding headers directly.

Check IP resolution and coverage

A reverse proxy can make many visits appear to originate at the proxy. Inspect the Access Log details where your privacy settings permit it, and have your hosting administrator verify the trusted forwarding chain. A repeated country alone is not proof of an IP-resolution problem.

Local providers can prefer the originating address (other_ip) over the public address. Cloudflare has a separate CF-Connecting-IP path gated by CF-Ray. Do not trust arbitrary client-supplied forwarding headers or replace the IP with an unvalidated request value.

Private addresses, VPNs, mobile networks, missing provider coverage and stale data can all produce unknown or unexpected locations. Geolocation is an estimate, not a precise physical address. MaxMind can fall back to a registered country when a country result is unavailable.

Check history, exclusions and custom code

Use a date range containing the new test visit. Older rows retain their stored country unless an explicit update path changes them; there is no automatic bulk geolocation backfill. Legacy or custom records can contain values different from today’s provider output.

A matching Countries exclusion rejects the whole pageview with diagnostic 311. If the visit itself is absent, follow the tracker checklist.

The legacy slimstat_get_country hook is not called in v6. For integrations, see its replacement guidance, the final pageview filter and the database-directory filter. Preserve consent and validate custom values.