Version 5.0.0

August 27, 2026

Initial release.

  • View counting in three modes: automatically while Craft renders, through a signed beacon for sites behind a full-page cache, or only where a template or some PHP asks.
  • Two-table ledger: lifetime totals and per-day buckets. No row per view, and nothing about a visitor is ever stored.
  • Eligibility rules for robots, addresses, signed-in users, Do Not Track and repeat visits — ordered so that an anonymous reader never causes a session to be opened.
  • entry.odometer on every element, with every window from today to all time, plus a day-by-day series and a trend against the previous window.
  • craft.odometer.popular() and craft.odometer.trending() as ordinary chainable element queries, and craft.odometer.sort() for a query you built yourself.
  • Multiple named counters per element.
  • Control panel: a Popular report with sparklines, drill-downs and CSV export; a sortable Views column on element indexes; a panel in the entry sidebar; a dashboard widget; and a read-only Odometer Views field.
  • Console commands for the top list, a summary, retention pruning, recounting and resetting.
  • EVENT_BEFORE_RECORD (cancellable) and EVENT_AFTER_RECORD.
  • Retention runs with Craft's own garbage collection, and only ever prunes day buckets.