zekt | Pricing

Simple, Fair, Predictable

Base + Usage. Pay only for what you use. Scale with confidence.

Add-On

Analytics Add-on

Unlock insights, Time Travel replay, and advanced features for power users.

$3
per repository / month
+ pay-as-you-go usage fees
  • Everything in Base Service — All core features included
  • Advanced analytics dashboard — Real-time metrics and trends
  • Time Travel Replay — Re-dispatch historical events with zero payload drift
  • Popularity insights — See which workflows are most subscribed
  • Performance metrics — Latency, throughput, and reliability stats
  • Export capabilities — Download data for custom analysis
  • Integration webhooks — Push analytics to your tools
  • Priority support — Faster response times
Add-On

Shield Add-on

Enterprise-grade security with Zero-Knowledge Encryption (ZKE) for your data payloads.

$4
per repository / month
+ pay-as-you-go usage fees
  • Zero-Knowledge Encryption — Only you hold the keys
  • Redaction Guard — Prevent sensitive data leaks
  • Secure Transmission — End-to-end payload protection
  • Bring Your Own Key (BYOK) — Complete architecture control
  • Compliance Ready — Meets strict security standards
Add-On

Chainlink Add-On

One repository, both roles. Enable event chaining pipelines across organizations with a single repo acting as Provider and Consumer.

$22
per repository / month
Flat rate — add-ons (Analytics $3, Shield $4) apply on top
Full stack example: Chainlink $22 + Analytics $3 + Shield $4 = $29/repo/month
  • Dual Role — Same repo acts as Provider and Consumer simultaneously
  • Event Chaining — Build A→B→C multi-hop pipelines across organizations
  • Chain Topology View — Visual upstream/downstream blast radius graph
  • Cycle Prevention — Platform-enforced loop detection at subscription time
  • Configurable Hop Limit — Cap chain depth (default 5, max 20)
  • Segment & Full-Chain Replay — Replay a single hop or re-run from origin

Usage-Based Pricing

Only pay for what you actually use. Our pay-as-you-go model ensures you never overpay for idle resources.

bolt

API Calls

$0.10 / 1,000 calls

Management API requests, webhook registrations, connection operations, and configuration changes including all event processing and rule handling.

router

Event Delivery

$0.05 / 1,000 events

Workflow events sent across organizations, including retries and delivery confirmations.

public

Network Transfer

$0.08 / GB

Outbound data transfer for event payloads and API responses.

storage

Storage

$0.02 / GB / month

Event & message history, connection metadata, and analytics data (Analytics add-on only).

chat

Custom Messages

Free

Attach custom messages to events using the zekt-action GitHub Action. No per-message charges. No limits. Free on all tiers.

lightbulbReal-World Example

A typical repository with moderate activity (100 events/day, 50 API calls/day) costs approximately $10.50/month — that's your $10 base fee + about $0.50 in usage fees. Most teams stay well under $15/repo/month.

replayWhy Teams Upgrade to Analytics

Time Travel Replay is the #1 reason teams add Analytics. Replay any event from the last 90 days with guaranteed structural fidelity — incident recovery, compliance re-processing, dev testing, or onboarding new consumers. Learn more about Time Travel →

What's Included

Compare features across our base service and analytics add-on.

Feature Base Service With Analytics With Shield With Chainlink
Cross-organization workflow orchestration
Event-driven messaging & delivery
Custom Messaging via zekt-action (free GitHub Action)
Zekt Directory (publish/discover services)
Webhook management & health monitoring
Connection tracking & visibility
Basic delivery status & monitoring
Multi-tenant security & isolation
Single repo acting as provider & consumer
Advanced analytics dashboard
Time Travel Replay — zero-drift event re-dispatch
Performance metrics & trends
Popularity & subscription insights
Data export & integration webhooks
Extended event history (90 days)
Priority support
Zero-Knowledge Encryption (ZKE)
Redaction Guard (DLP)
Bring Your Own Key (BYOK)

Frequently Asked Questions

Everything you need to know about Zekt pricing.

Pricing & Billing

How does the $10/repository base fee work?

chevron_right

Each repository you connect to Zekt (whether as a provider or consumer) costs $10/month. This covers the core infrastructure, security, and workflow orchestration capabilities. Usage fees (API calls, events, etc.) are added on top based on your actual consumption.

Are provider and consumer repos billed differently?

chevron_right

No — all repositories connected to Zekt are billed identically at $10/repo/month, whether they act as a provider (sending events) or a consumer (receiving events). If a repository needs to do both, you can either use two separate repositories ($10 each) or the Chainlink add-on ($22/repo), which is purpose-built for that dual role.

Do I pay per chain or per repository?

chevron_right

Per repository. A chain is not a billable unit — the repositories that form it are. Each Chainlink-enabled repository is $22/month. A three-hop pipeline (A→B→C) consists of three Chainlink repositories billed individually, plus any add-ons (Analytics, Shield) applied per repository on top.

Is the Zekt Action free or metered?

chevron_right

Completely free. The zekt-action is an open-source GitHub Action included at no charge on all tiers. Some teams only use Zekt's event signal (no payload). Others attach rich JSON message payloads via zekt-action for richer cross-org context. Either way — no per-action charges, no metering.

What counts as "usage" in the pay-as-you-go model?

chevron_right

Everything Zekt processes on your behalf: ingesting events from providers, dispatching repository_dispatch webhooks to consumers, evaluating delivery rules, network transfer (inbound and outbound), and storage of event and payload data. If Analytics is enabled, long-term payload retention also contributes to storage costs. GitHub runner costs are not included — those are between you and GitHub.

How much does a typical workflow cost?

chevron_right

Event delivery costs a fraction of a cent per dispatch — $0.05 per 1,000 events. A repository with moderate traffic (100 events/day) typically adds about $0.30–$0.50 in usage fees on top of the $10 base, keeping total cost well under $11/month. You can track your exact costs in real time from the Billing tab in the management console. The 7-day free trial gives you real usage data before you commit to anything.

What happens if I go over my usage estimates?

chevron_right

Nothing changes — that's the point of pay-as-you-go. If you send 10,000 events instead of 1,000, you simply pay for 10,000. Zekt does not throttle or cut off your service. Note that GitHub has its own throttling and quotas at the Actions level — those are enforced by GitHub independently of Zekt. You can set budget alerts in the management console to get notified if usage exceeds your expectations.

Are there any hidden fees or commitments?

chevron_right

No hidden fees, no commitments. Pay month-to-month with no contracts. Cancel anytime with no penalties. We believe in transparent pricing — what you see is what you pay. All costs are clearly itemized in your monthly invoice.

Can I try Zekt before committing?

chevron_right

Yes — Zekt offers a 7-day free trial with full access to all features including Analytics. Sign up with a payment method; if you opt out within the trial period, no charges apply. Test it with your actual workflows, see the value firsthand, and if you want to continue, your payment method is already in place.

When should I add Analytics?

chevron_right

Add Analytics when you need Time Travel Replay — recover from incidents by replaying events exactly as they were delivered, with zero payload drift. Also ideal for deep insights into workflow performance, or visibility into which teams are consuming your services. It's the go-to upgrade for platform teams, ops leads, and anyone who needs to troubleshoot, audit, or optimize cross-org workflows. Try the base service first — you can always upgrade later.

Do you offer volume discounts for large teams?

chevron_right

Yes. Contact us at hello@zekt.dev to discuss volume discounts and enterprise features.

Zekt Chainlink

What is Zekt Chainlink in simple terms?

chevron_right

In standard Zekt, a repository plays exactly one role: it is either a Provider (it sends events) or a Consumer (it receives them). Chainlink removes that constraint — a single repository can be both simultaneously. This is the building block for multi-step pipelines that span teams and organizational boundaries: each node in the chain receives an event, processes it (optionally enriching or transforming the payload using the free zekt-action), and dispatches downstream to the next consumer. Complex, cross-org business processes become a series of native GitHub workflows, each owned by the team responsible for that step.

When would I use Chainlink vs standard provider/consumer?

chevron_right

Use Chainlink when a repository needs to sit in the middle of a process — receiving a trigger from upstream and dispatching a result downstream. If you're only publishing events, or only consuming them, the standard $10/repo service is the right fit. Chainlink is for repositories that bridge steps in a larger, multi-party workflow.

How is data passed between links?

chevron_right

Zekt uses native GitHub repository_dispatch events as the transport between links. Each link can optionally use the free zekt-action to attach or transform a JSON message payload before dispatching downstream. Each node can pass the payload through unchanged, enrich it with new fields, or strip out data not relevant to downstream consumers — giving every party in the chain full control over what it forwards.

Can I branch or fork chains?

chevron_right

Yes. Zekt supports 1-to-many fan-out at every hop — a single repository can dispatch to multiple downstream consumers simultaneously. Chains don't have to be linear: at any step, one repository can trigger several downstream consumers in parallel, each of which can continue their own independent chain. Every branch can also enrich or transform the payload before forwarding.

Can I create a closed-loop pipeline with Chainlink?

chevron_right

Yes. An event can originate in one repository, traverse multiple processing steps across separate teams or organizations, and return a completion signal or enriched response back to the originating repository. This enables full round-trip orchestration — for example, triggering a cross-org compliance check and receiving a structured pass/fail result back into your own workflow.

How many links can a chain have?

chevron_right

Chains are capped at 5 hops by default, configurable up to a maximum of 20 hops. This is enforced by Zekt at subscription time to prevent runaway chains and protect against accidental processing loops.

What happens if one link in the chain fails?

chevron_right

The chain stops at the failed link — downstream consumers will not receive the event. With the Analytics add-on enabled, you get Time Travel Replay: once the failing workflow is fixed, you can re-dispatch the original event (with its exact payload) from the point of failure, without needing to restart the full chain from scratch.

Security & Data

Does Zekt ever access my repository code?

chevron_right

No. Zekt never reads, clones, or inspects your source code. Access is strictly scoped to workflow run metadata, webhook registration, and repository metadata — the minimum required to orchestrate event dispatch.

What permissions does Zekt require in GitHub?

chevron_right

Zekt is installed as a GitHub App (the Zekt Orchestration App), consented to per-repository — not organization-wide. Required permissions:

  • Actions: Read & Write
  • Administration: Read & Write
  • Contents: Read & Write
  • Metadata: Read (mandatory, set by GitHub)
  • Webhooks: Read & Write

Organization permissions: None  ·  Account permissions: None

Can Zekt see my payload contents?

chevron_right

By default, yes — Zekt processes and routes your event payloads in order to deliver them. If payload confidentiality is required, enable the Shield add-on: payloads are encrypted client-side (inside the zekt-action) before they ever reach Zekt's servers, and only the intended consumer can decrypt them using their own private key. With Shield enabled, Zekt cannot read your payloads — and as a consequence, cannot replay them either, since the content remains opaque to us.

Is payload data persisted or transient?

chevron_right

It depends on your configuration:

  • Base service: Payloads are retained only long enough to guarantee delivery — typically seconds to under a minute, then discarded.
  • Analytics add-on: Event and payload history is retained for up to 90 days to support Time Travel Replay.
  • Shield add-on: Payloads are stored as opaque ciphertext — same retention rules apply, but the content is never readable by Zekt.

Where is data stored?

chevron_right

All Zekt infrastructure runs on Microsoft Azure in the EU region. Event data, customer configuration, and metadata are stored in Azure PaaS services (Cosmos DB, Azure Storage). Payment information is handled exclusively by Stripe and is never stored by Zekt.

How does BYOK (bring your own key) actually work?

chevron_right

When you enable Shield, you generate an RSA key pair locally — the private key never leaves your machine. You upload only the public key to Zekt. When a provider dispatches with Shield enabled, the zekt-action fetches your public key and encrypts the payload client-side using a hybrid RSA + AES-GCM scheme before sending it to Zekt. Zekt stores and forwards the encrypted envelope but holds no private key — it is architecturally incapable of decrypting it. Your consumer workflow decrypts the payload locally using your private key. This is a cryptographic guarantee: even under legal compulsion, Zekt cannot produce your plaintext.

Common Pitfalls

How would I know which event name to trigger on, as a consumer - provided by a Service (Provider)?

chevron_right

When a provider is creating their Service Description, they specify the event type name (dispatched event type) and is associated with the service configuration. This MUST BE the EXACT same name, as they submit to Zekt Action (when depositing their payload) from their whitelisted workflow (service). The consumer of the service, can see / observe the event type name, from the Service card, shown in the tab "Browse Directory" (marketplace) as a property of the service when expanded for easy consumption. The customer would configure their workflow, that they intend to trigger when subscribing to the service as follows from their receiving workflow:

name: Consume GitHub event from custom provider (with message payload)

on:
  repository_dispatch:
    types: [event-type-name-to-trigger-on]

What should I trigger on, when an event is sent from a provider — with no message?

chevron_right

When a provider distributes a pure event (with no message payload via zekt-action), the repository_dispatch trigger on the consumer side must use the value zekt-workflow-completed:

name: Consume GitHub event from custom provider (no message)

on:
  repository_dispatch:
    types: [zekt-workflow-completed]

If you use a custom types value (or omit the types filter entirely), the consumer workflow will not be triggered when the provider sends a plain event. zekt-workflow-completed is the fixed event type Zekt dispatches when no custom payload is attached.

Is it possible to host multiple Zekt Services (workflows) from within a single enabled provider/chainlinked repository or is there 1-to-1 relation?

chevron_right

Yes — it is possible to have multiple enabled Zekt services, within a single provider/chainlinked repository! We don't cap the number of workflows that can be whitelisted within a repository, nor services! Eventually it will be around how convenient it is to have all services coming out of a single repository, or if the customer desires to have multiple repos for different services. Zekt has tested +20 workflows/services coming out of a single repository — without problems!

I am subscribing to a service, which generates a lot of false positives! Meaning - my consumer workflow is triggered each time the corresponding service workflow is executed but I only want to trigger when a certain value/condition of the payload/event is true! As such I would want to filter down payload before they hit my consumer repo - as I burning through quotas for no reason!

chevron_right

Zekt got you covered! The consumer tab named Inquisition, allows you to block/filter down payloads (events and messages) before the service is allowed to become dispatched to your consumer repository! Inquisition is a deny feature — meaning all rule-sets you configure, if the payload & event matches one of the rule-sets, it will become blocked. This allows you to sort out false-positive scenarios — where event payloads that would otherwise trigger your consumer workflow will become blocked (not dispatched).

Is it possible that I as a customer - create endless-loops of event triggering using Zekt? Do I need to be careful?

chevron_right

Short answer is: Yes — you can create endless loops and you need to be careful! Think of the below scenario:

  • A chainlinked provider repo A, service A — generates an event type named A-triggers-B. It also contains a consumer workflow (repo A is chainlinked) which triggers on event type C-triggers-A and by accident, this workflow is using Zekt action, with the event type name A-triggers-B (which would yet again, kick off the chain of calls).

In this case, the workflow in repo A would run — trigger receiver/consumer B, which then sends to C. C would eventually call back to A (event type name C-triggers-A) → which creates an endless loop, by re-using the A-triggers-B value.

Misconfiguration generating endless-loops — if introduced by customers — will be billed, as these can be perfectly legit scenarios depending on intention and are impossible for Zekt to distinguish from invalid scenarios.

Ready to Orchestrate Your Workflows?

Start your 7-day free trial today. You sign up for trial with payment method - if you opt-out within the 7-day trial period - no charges! Cancel anytime.

Back to Zekt