takt

Embeddable widgets

Show a site’s public stats anywhere: a badge in your README, a mini dashboard on a page, or a counter that refreshes itself. Three formats, zero server-side setup.

Widgets only work when the site is public and verified. Enable "Public statistics" in Site settings. You'll find every ready-to-copy snippet — with a live preview — on your site's Widgets page.

The easiest path: copy the ready-made snippets from your site’s Widgets page (the absolute URL is generated for you). In the manual examples below, https://takt.example.com stands in for Takt’s address — just replace example.com with your domain.

SVG badge

A small “visitors · 30d” image, perfect for a GitHub README, an email, or a footer. No dependency, no JavaScript.

In Markdown:

[![Takt stats](https://takt.example.com/public/example.com/badge.svg)](https://takt.example.com/?ref=example.com)

In HTML:

<a href="https://takt.example.com/?ref=example.com">
  <img src="https://takt.example.com/public/example.com/badge.svg" alt="Takt stats" />
</a>
takt 1,234 visitors · 30d
takt 1,234 visitors · 30d
takt 1,234 visitors · 30d

Options

Add them as query parameters on the badge.svg URL:

ParameterValuesDefaultEffect
varianta, b, daStyle: a light card, b coral, d dark
glyphunplug, dash, off, eyeoffunplugFallback badge glyph (private/not-found site)
langfr, enfrLabel language and number format
https://takt.example.com/public/example.com/badge.svg?variant=d&lang=en
No need to memorize these parameters: your site's Widgets page has a configurator (style, fallback glyph, theme, language) with a live preview and the ready-to-copy snippet.

Embed (iframe)

A read-only mini dashboard: a visitors chart + 3 key figures (visitors, page views, average duration). Great for a “transparency” page or a landing site.

<iframe
  src="https://takt.example.com/embed/example.com"
  style="border:0;width:404px;height:264px"
  title="Takt stats"
  loading="lazy"
></iframe>
exemple.fr 7 live
Visitors
1,234
▲ 12%
Page views
3,891
▲ 8%
Avg. time
1m 48s
▲ 5%
Last 30 days powered by takt

The embed accepts the same lang parameter (and theme=light|dark) in the query: …/embed/example.com?lang=en&theme=dark.

badge.js snippet

A single <script> that automatically injects the badge or the iframe where you place it — handy when you can’t hand-write Markdown or an iframe.

<script
  src="https://takt.example.com/badge.js"
  data-domain="example.com"
  data-format="badge"
></script>

Attributes

AttributeValuesDefaultRole
data-domainyour domain(required)Site to display
data-formatbadge, embedbadgeImage badge or iframe
data-varianta, b, daBadge style
data-langfr, enautoLanguage
data-themelight, dark, autolightEmbed theme
data-live(present)Auto-refreshes the badge

With data-live, the badge updates on its own (every 30s, paused when the tab is hidden):

<script
  src="https://takt.example.com/badge.js"
  data-domain="example.com"
  data-format="badge"
  data-live
></script>

When the site isn’t public

If a site is private (or doesn’t exist), the widgets never show a broken image: they display a neutral takt badge with an unavailability icon and no figure at all. No stats leak, and the state is identical whether a site is private or nonexistent (anti-enumeration).

The glyph is configurable via glyph:

takt
takt
takt
takt
Widgets are strictly read-only and anonymous: no cookie is set, no personal data is exposed. They only show aggregates that are already public.

What’s next