← Integrations
Dune logo

Dune

Surface any saved Dune query as a live iOS widget and see your on-chain KPIs at a glance, without opening dune.com.

Queries you already wrote, now glanceable

You have saved queries on Dune tracking TVL shifts, swap volume, active wallets, fee revenue, or whatever on-chain KPI matters today. PulseKit reads the first row of any saved query and maps each numeric column to a widget metric. Paste a query ID, give the widget a name, and the result appears on your home screen. No rewriting, no new dashboards.

PulseKit calls Dune's read-only results endpoint and never triggers execution, so each widget refresh costs only the datapoint rate for one row: roughly 1-2 API credits per day per widget on the free Analyst plan at a 5-minute refresh interval, well within the free-tier monthly allowance of 2,500 credits.

Query shape matters: a wide aggregate (one row, one numeric column per KPI) maps cleanly to multiple metrics. Tall queries with a label column and separate value rows surface only the first row. If your query returns rollup rows such as "Daily Active Traders," "Daily Volume," and others stacked vertically, rewrite the SELECT as one wide row with named columns before connecting it to PulseKit.

Credit budget at a glance

The API Usage module surfaces your current billing period's credit consumption: credits used, credits remaining, percentage of monthly budget consumed, and storage percentage. Credits remaining is the primary cost-gate signal; you see the burn curve across the month without logging in. When the number approaches zero, you know query execution on Dune will start throttling before the period resets.

What freshness means here

PulseKit reads the last cached execution Dune has on file. Freshness is determined by your own Dune query schedule, not by PulseKit's fetch interval. If you run the query hourly on Dune, the widget reflects hourly data. If you run it once a day, the widget reflects once-a-day data. PulseKit delivers the result; you control the cadence by scheduling queries on Dune.

How to get your Dune API key

Dune credentials:

  1. Generate an API key at dune.com/settings/api by clicking Create API key. The free Analyst plan includes API access at 40 read requests per minute.
  2. Copy the key, which is shown once, and paste it below.

The key inherits your account's query access. Private queries you own are readable. Private queries owned by others are not.

Security

How we protect your credentials

Your Dune API key is sealed on this device with AES-256-GCM before it ever leaves your iPhone. Only your device holds the unwrap secret, stored in the iOS Keychain. The PulseKit backend wraps that already-encrypted payload again with its STORAGE_SECRET and writes the double-envelope blob to Postgres, so the server never sees your plaintext key at rest. Each fetch request includes a one-time unwrap secret that decrypts the inner envelope only long enough to call Dune. The key is scoped to this device, can be revoked from PulseKit at any time, and is never written to logs.

What you can track

Pick the metrics you care about and pin them as widgets.

Dune Query

Surface the first row of any saved Dune query as metrics. Numeric column titles become metric names.

    API Usage

    Track your Dune API credit consumption and storage usage.

    • 59
      Credits used
    • 94
      Monthly credit cap
    • 32
      Credits remaining
    • 93
      % of credits used
    • 58
      % of storage used

    Numbers shown are illustrative — your widgets show your live data.

    Who uses this

    • DeFi analysts

      You track protocol TVL, swap volume, and fee revenue across chains with custom Dune queries. PulseKit puts the first-row numeric result of each query on your home screen so you can see whether a KPI moved overnight without opening a browser tab or waiting for a dashboard to load.

    • Protocol researchers

      You maintain a library of saved queries monitoring active wallets, contract deployments, gas trends, and whale flows. Paste each query ID into PulseKit and the latest cached result lands on your iOS widget, reflecting the freshness of your own Dune execution schedule.

    • Crypto traders

      You follow public Dune dashboards built by other analysts: DEX volume trackers, stablecoin flow monitors, and liquidation dashboards. Any public query ID works the same way as a private one. Copy the ID, paste it into PulseKit, and the top-row number appears on your home screen.

    • Data teams

      You run multiple query widgets across different protocols and use the API Usage module to keep the team's monthly credit budget visible. The credits-remaining metric shows the burn curve in real time, so you can throttle refresh schedules before the billing period resets.

    FAQs

    How does PulseKit read my Dune query results?

    PulseKit calls Dune's read-only results endpoint using your API key and fetches the first row of your saved query. Each numeric column in that row becomes a named widget metric. Non-numeric columns such as dates, text labels, and booleans are dropped automatically. The query itself is never re-executed by PulseKit.

    Does PulseKit use my Dune execution credits when it fetches data?

    No. PulseKit reads cached results, not executions. Each fetch charges only Dune's datapoint rate: one row multiplied by the number of numeric columns. At a 5-minute widget refresh on the free Analyst plan, a typical 2-8 column query costs roughly 1-2 API credits per day, well within the 2,500-credit monthly free-tier allowance.

    How current are the numbers shown on my widget?

    The widget shows the result from the last time you or Dune's scheduler ran the query on Dune. PulseKit reads whatever cached execution Dune has on file and delivers it to your widget. If you schedule the query to run hourly on Dune, the widget reflects hourly data. PulseKit does not trigger new executions.

    Can I connect private Dune queries?

    Yes. Private queries you own are readable with your API key and work exactly like public ones. Private queries owned by other accounts are not accessible; Dune returns a permission error in that case. Public queries work without any ownership requirement, so you can track dashboards built by other analysts as well.

    What query shape works best with PulseKit?

    Wide aggregates work best: one result row with one numeric column per KPI you want to track. Tall queries that stack metrics as separate rows only expose the first row. If your query returns a multi-row rollup, rewrite the SELECT to pivot the values you care about into named columns in a single row.

    Which Dune plans are supported?

    Any plan with API access works, including the free Analyst plan. The free tier includes 40 read requests per minute and 2,500 credits per month. Both the Dune Query module's read-only fetches and the API Usage module's billing check run within free-tier limits for typical widget usage patterns.

    How is my Dune API key protected on my device?

    Your key is encrypted with AES-256-GCM on your iPhone before it ever leaves the device. The unwrap secret lives in the iOS Keychain and never leaves your device. The PulseKit backend stores only a double-encrypted envelope and never sees your plaintext key at rest. You can revoke access from PulseKit at any time without affecting your Dune account.

    Dune logo

    Add Dune widgets to your iPhone

    Install PulseKit, paste your credentials, pick a widget.

    Download