Free during beta — every tool unlocked, no charges, no credit card. Start building for free →
Products

Your whole stack, one dashboard,
one bill, one DPA.

Most teams glue together Plausible, Sentry, BetterUptime, and a render API — paying four bills, signing four DPAs, debugging four dashboards. MOJAQ bundles them under one login, hosted in Helsinki. No data leaves the EU.

Start free See pricing
The unified pitch

One platform, one database, zero context switching

Each tool is good on its own. Together they tell a complete story: who's visiting, what they're doing, whether it works, and what's breaking. Cross-product correlation comes free because the data lives in one place.

1
Account
1
Invoice
1
DPA to sign
18+
Tools, ready
Analytics

Privacy Analytics

Cookieless web analytics. No cookies, no consent banner, no IP storage. Just real-time pageviews, sessions, and goals.

  • GDPR-native — your visitors don't get the cookie wall
  • Under 1 KB script, <50ms p95 ingestion latency
  • UTM, referrer, custom events, and goal funnels
  • Public sharing links — embed on your status page or pitch deck
<!-- one script tag, anywhere in <head> -->
<script defer
  data-domain="yoursite.com"
  src="https://analytics.mojaq.com/js/script.js"
></script>

# custom events
plausible('Signup', { props: { plan: 'pro' } })
# url → pdf
curl -X POST https://api.mojaq.com/v1/render \
  -H "X-API-Key: $MOJAQ_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://invoice.app/123","format":"pdf"}' \
  -o invoice.pdf

# or html → png at any viewport
{ "html": "<h1>Hello</h1>",
  "format": "png",
  "viewport": { "width": 1200, "height": 630 } }
Render API

Screenshot & PDF API

Send a URL or HTML, get back pixel-perfect screenshots or PDFs. A real Chrome engine under the hood, hardened for production batch workloads.

  • PDF, PNG, JPEG, WebP — single endpoint, one bearer token
  • Custom viewports, device emulation, full-page or element captures
  • Webhook on completion for batch jobs (invoices, social cards)
  • Authenticated upstream requests via per-call headers
Uptime

Uptime & Heartbeat Monitoring

Watch websites, APIs, ports, and cron jobs from Helsinki. Push monitors catch the silent failures your TCP probes miss.

  • HTTP, TCP, ICMP, DNS, gRPC, push-heartbeat — one runtime
  • 30-second intervals, multi-region probes on the roadmap
  • Slack, Discord, webhook, email alert channels
  • Public status pages with your custom domain & branding
# nightly backup heartbeat — alert if no ping in 26h
curl -fsS "https://kuma.mojaq.com/api/push/$TOKEN" \
  --data-urlencode "status=up" \
  --data-urlencode "msg=backed up 51 files, 194M"

# exact pattern in our own backup.sh:
# https://github.com/mojaq/...
# Sentry SDK works as-is — point DSN, ship.
import * as Sentry from "@sentry/node"
Sentry.init({
  dsn: "https://<key>@errors.mojaq.com/<project-id>",
  tracesSampleRate: 0.1,
})

# Captures stack traces, breadcrumbs, request context.
# Smart grouping deduplicates noisy errors.
Errors

Error & Exception Tracking

Fully Sentry-SDK compatible. Drop in any Sentry client, point the DSN at errors.mojaq.com, you're done.

  • Sentry SDK compatible across Node, Python, Go, PHP, Ruby, .NET
  • Full stack traces, breadcrumbs, request & user context
  • Issue grouping, assignments, daily digest emails
  • Slack, Discord, webhook, and now Resend-powered email
# evaluate a flag for a user
curl "https://api.mojaq.com/v1/flags/new-checkout?user_id=usr_123" \
  -H "X-API-Key: $MOJAQ_KEY"

# response
{ "enabled": true, "rollout": "25%" }
Feature Flags

Feature Flags & Rollouts

Ship code separately from activation. Boolean flags, percentage rollouts and attribute targeting from one API, EU-hosted.

  • Boolean flags, percentage rollouts, user targeting
  • Kill switch: pause a bad rollout with one call
  • Flag data stays in the EU, next to your errors and analytics
  • Unlimited flags on every plan
Realtime

Realtime WebSockets

Pusher-protocol compatible realtime. Your existing Pusher client libraries work unchanged, with connections terminated in the EU.

  • Public, private and presence channels
  • Drop-in: swap the key and host, keep your code
  • Server REST API for publishing events
  • Live debug console in the dashboard
// your existing pusher-js client, EU host
const pusher = new Pusher("MOJAQ_APP_KEY", {
  wsHost: "realtime.mojaq.com",
  forceTLS: true,
});
pusher.subscribe("orders")
  .bind("order.updated", render);
# GET /dashboard/rewind?minutes=15
{
  "narrative": "Deploy v2.4.1 at 20:11 UTC — first browser"
    "error 5 min later. Blast radius: 14 sessions.",
  "trigger": "Deploy v2.4.1 to production",
  "plan": ["Roll back v2.4.1 (redeploy previous)"]
}
Rewind · new

Causal incident intelligence

What broke, why, and the plan to reverse it. Because deploys, flags, AI calls, traces and real users live in one database, Rewind reads the whole chain and hands you a reversible plan — you approve and run it.

  • Auto-correlates the trigger to the first symptom
  • Quantifies blast radius across every signal
  • Advisory only — MOJAQ never touches your systems
AI Gateway

Governed AI gateway

An OpenAI-compatible endpoint in front of any provider. Budget caps, a kill-switch and automatic model fallback — without changing your code.

  • Drop-in wrapper: one import, keep your OpenAI code
  • Per-org spend caps and a one-click kill-switch
  • Every prompt logged for cost control and audit
// keep your OpenAI code, change one import
import OpenAI from "mojaq-openai"
const ai = new OpenAI({ apiKey: process.env.MOJAQ_API_KEY })
await ai.chat.completions.create({ model: "gpt-4o-mini", messages })
# send a batch of spans, see the waterfall
curl -X POST https://api.mojaq.com/v1/traces \
  -H "x-api-key: $KEY" \
  -d '{"spans":[{"trace_id":"t1","span_id":"a",
    "service":"web","name":"POST /checkout",
    "start_ms":0,"duration_ms":840}]}'
Tracing

Distributed tracing & APM

Span waterfalls, service latency and error rates. Send a simple JSON batch and see exactly where a request spends its time.

  • p50 / p95 latency and error rate per service
  • Click any trace for the full waterfall
  • Shares the database with errors, deploys and AI calls
Security

SSL & Domain Watch

Enter a root domain once. We map every certificate and subdomain from Certificate Transparency + DNS, and flag expiring certs and subdomain-takeover risk — including the ones you forgot.

  • Certificate Transparency + DNS + live TLS handshakes
  • Dangling-CNAME / subdomain-takeover detection
  • Free public scan — no login required
# one-time free scan, no login
curl -X POST https://mojaq.com/api/scan \
  -d '{"domain":"yourcompany.com"}'
# → every cert & subdomain, risk-ranked
# generate an AI-Act risk classification
POST /dashboard/compliance/generate
{ "type": "ai_act" }
# → a document built from your real
#   models, providers and call volume
Compliance

Compliance Center

Turn EU-hosting into audit-ready paperwork. Auto-build a DPIA, an AI-Act risk classification and a data-residency attestation from your real usage. Evidence and a working draft, not legal advice.

  • Readiness score with an actionable checklist
  • DPIA, AI-Act and residency, generated from live data
  • Built on the Komplio document engine
The complete platform

Every tool, one account, one bill

Each is good alone. Together, in one database, they tell the whole story.

Analytics
Cookieless web analytics
Uptime & Heartbeat
HTTP/port monitors + cron dead-man
Error Tracking
Sentry-compatible, EU-hosted
Logs
Loki-compatible log ingest + search
Tracing / APM
Span waterfalls, p50/p95
Real-User (RUM)
Core Web Vitals from real browsers
AI Gateway
OpenAI-compatible, caps + fallback
Rewind
Causal incident intelligence
SSL & Domain Watch
Certs, subdomains, takeover risk
Compliance Center
DPIA / AI-Act / residency docs
On-Call
Roster + weekly rotation
Status Pages
Public status + badge, uptime-backed
Feature Flags
Boolean + percentage rollouts
Realtime
Pusher-protocol WebSockets
Render / PDF
URL or HTML to PDF/PNG
Forms
Backend-less form endpoints
Webhooks
Signed delivery + inbox
Scheduled Calls
Cron-style HTTP jobs
Web Push
Browser push notifications
Changelog
Public changelog + RSS
MCP Server
Your stack, native to AI agents
Why bundle

The story is in the cross-product view.

Four sources of truth become one when they share a workspace. Examples of correlations you get for free:

Analytics Errors

Spike in 500s after a deploy

Drop in conversions on the analytics dashboard lines up exactly with new exceptions in errors. Same timestamp, same filter, one click between them.

Uptime Errors

API monitor flaps, errors stay quiet

Network-layer outage your app caught and retried — uptime sees red, errors stays green. Different problem class, surfaced together.

Render Uptime

Nightly invoice render fails silently

Render webhook never fires — push monitor times out at 26h and alerts. Without the heartbeat, you'd find out from customer support.

Analytics Render

OG image traffic by referrer

See which social shares actually drove visits, then regenerate that day's OG images at scale through the render API.

Free during beta. Then €0–79/mo, every tool in every plan.

No per-tool billing. No cookie banner to add. No DPA to redline — ours is ready to sign.