ankane/ahoy

Simple, powerful, first-party analytics for Rails

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 1 hour ago
Added to GitGenius on September 15th, 2026
Created on February 26th, 2014
Open Issues & Pull Requests: 6 (+0)
GitHub issues: Enabled
Number of forks: 386
Total Stargazers: 4,480 (+0)
Total Subscribers: 51 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 15.4 hours
Mean response time: 49.2 days
90th percentile: 126.2 days
Tracked items: 19

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 2
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 189 days
Stale 30+ days: 2
Stale 90+ days: 2

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

Sign in to see which issues are moving.

Detailed Description

Ahoy is a first-party analytics library for Rails that tracks visits and events directly in your application's database.

The tool solves the problem of collecting analytics data without relying on third-party services. It automatically creates visits when users arrive at your site, capturing traffic source, location, technology details, and UTM parameters. Events can be tracked from Ruby controllers, JavaScript, or native mobile apps. Data is stored in your database by default, but the architecture supports customization for other data stores as your needs grow. The library includes built-in GDPR compliance options and can defer visit creation to JavaScript to filter out bots and users with cookies disabled.

Ahoy suits Rails applications where you want to own your analytics data and avoid external tracking services. It works well for projects that need basic visit and event tracking without the complexity of a dedicated analytics platform. The tool integrates naturally with Rails conventions, automatically attaching the current user to visits and providing a `current_visit` method for accessing visit data in controllers. You can prevent certain actions from creating visits, which is useful for API endpoints. The library also supports associating other models with visits through a `visitable` mixin, making it easy to track which visits led to conversions or other business events.

The project maintains active development with regular updates addressing user-reported issues and feature requests. Pull requests receive timely review and feedback from maintainers. The codebase shows consistent attention to edge cases, such as handling authentication frameworks beyond Devise and supporting multiple JavaScript bundlers. Documentation is comprehensive and includes detailed sections on geocoding setup and GDPR compliance options. The maintainers are responsive to questions and suggestions in issues, demonstrating engagement with the user community.