HitKeep Documentation

website·Indexed 33 days ago

https://hitkeep.com/guides/introduction/

A privacy-first web analytics platform available as a managed cloud service or self-hosted Go binary. Documentation includes guides on installation, data tracking, analysis, migration, security administration, DuckDB integration, and API references.

Tokens
1.6K
Snippets
0
Records
18
Agent score
68%

What's inside HitKeep

  1. Overview of HitKeep Analytics

    HitKeep is a privacy-first web analytics platform designed for DevOps engineers, developers, and privacy-conscious site owners. It allows for full data ownership without requiring external dependencies like PostgreSQL, Redis, Kafka, or ClickHouse. Data is stored in DuckDB and can be exported in open formats including JSON, CSV, Parquet, NDJSON, and XLSX.
  2. HitKeep Technical Architecture and Stack

    HitKeep is built as a single-binary application (approximately 100 MB) using a tech stack that includes DuckDB for data storage and embedded NSQ. It supports clustering, tenancy, and is designed for zero third-party frontend requests in self-hosted environments.
  3. Deploy HitKeep via Managed Cloud or Self-Hosting

    HitKeep offers two primary deployment models:

    1. HitKeep Cloud: Managed hosting available in EU or US regions.
    2. Self-Hosted: Deployed as a single Go binary (approximately 100 MB for Linux) with zero external service dependencies. It targets a modern glibc baseline and can be run on bare metal, VMs, VPS, or Raspberry Pi. Docker Compose and Kubernetes (via official OCI Helm charts) are also supported.
  4. Track automatic events and QR campaigns

    HitKeep automatically tracks outbound_click, file_download, and form_submit events. To protect privacy, query strings, hashes, link text, form fields, and request bodies are excluded from these events.

    For QR campaigns, HitKeep provides dynamic /q/{token} redirects that support UTM fields, custom query parameters, and hk_qr attribution. This includes QR-filtered analytics and SVG/PNG artwork exports.

  5. Export and archive analytics data

    HitKeep supports data exports in JSON, CSV, Parquet, NDJSON, and XLSX formats where supported by the product surface. Retention archives and backup snapshots specifically utilize Parquet-backed DuckDB export flows.
  6. Secure HitKeep accounts with MFA and Recovery

    HitKeep supports multi-factor authentication (MFA) using TOTP and WebAuthn (FIDO2 passkeys). For account recovery, the system provides recovery codes, owner MFA reset capabilities, and a CLI 'break-glass' recovery mechanism.
  7. Implement HitKeep Tracking with hk.js

    The HitKeep tracking snippet (hk.js) is cookie-less by default and respects 'Do Not Track' settings. It provides the following capabilities:

    • Automatic Event Tracking: Automatically emits outbound_click, file_download, and form_submit events.
    • Privacy-Preserving Metadata: Stores derived city, provider, and ASN metadata without storing raw visitor IP addresses.
    • Web Vitals: Collection of Web Vitals is opt-in and handled via a same-origin split bundle.
    • Integration Options: Available as a standard snippet, a first-party WordPress plugin, or a typed NPM package (@hitkeep/tracker) for React, Vue, Angular, and Astro.
  8. HitKeep system requirements and technical stack

    HitKeep is built with Go 1.27+ and utilizes an embedded DuckDB v2.5 database (one file per tenant data plane) and an embedded NSQ v1.3 queue (in-process and loopback only). For clustering, it uses HashiCorp Memberlist. The frontend is developed using Angular 22, OptimusUI 1.0.0-rc.1, Tailwind CSS 4, and ECharts. Linux release binaries are approximately 100 MB. Practical memory usage for HitKeep Cloud typically ranges between 205-769 MiB.
  9. Track AI Crawlers and Bot Visibility

    HitKeep provides specialized tracking for AI-driven traffic:

    • AI Crawler Tracking: Specific guides and campaigns for tracking GPTBot, ClaudeBot, and Perplexity.
    • AWS Integration: Ability to collect AI crawler fetches from CloudFront or AWS edge logs via AI Fetch on AWS.
    • AI Visibility Analytics: Dedicated reporting for AI crawler fetches, AI-referred visits, and correlation context.
  10. Configure AI models for self-hosted HitKeep

    Self-hosted deployments can optionally configure AI models. This requires setting specific environment variables for the HitKeep route, budget, and GoAI provider credentials. Configuration also includes defining status fields and audit boundaries.
  11. Configure the HitKeep tracking snippet

    The public tracker uses an esbuild-compiled hk.js snippet. By default, it is cookie-less and utilizes sessionStorage for session continuity. It respects 'Do Not Track' (DNT) settings unless explicitly configured otherwise. Web Vitals tracking is handled by a separate same-origin script, hk-vitals.js, which is disabled by default and requires opt-in.