Trust & Security

Security at Montu

Montu holds your brand, your site data and the credentials that publish to your store. This page says exactly how each of those is protected — and, just as plainly, what we do not claim.

Last reviewed September 2026. Every control below was written from the running code, not from a template.

Controls

What protects your account

Six groups, in roughly the order a security review walks them.

Where your account lives, and who runs the machines underneath it.

EU-hosted Postgres

Account records, brand profiles, generated-content metadata and connected-store tokens live in a managed Neon PostgreSQL database hosted in the European Union. Database connections are TLS-encrypted and the credentials for them exist only on our deployment infrastructure.

HTTPS-only application hosting

The application runs on Vercel and is reachable over HTTPS only. HTTP Strict Transport Security is served with a two-year max-age, includeSubDomains and preload, so a browser that has seen Montu once will not attempt plain HTTP again.

We never see your card

Dodo Payments is the merchant of record and processes every payment. Montu receives a confirmation and your plan tier — never a card number, never billing address data. There is no cardholder data in our database to protect.

In transit, at rest, and for the one thing that must never be reversible.

TLS 1.3 in transit

Traffic to montuai.com and to the API is served over TLS 1.3 with preloaded HSTS. Every outbound call Montu makes — to your store, to search-data providers, to model providers — is HTTPS.

AES-256-GCM at rest for credentials

Store and CMS access tokens are encrypted with AES-256-GCM before they are written: a fresh random IV per value, an authentication tag, and a versioned envelope so the key can be rotated without breaking existing rows. A tampered ciphertext fails to decrypt rather than quietly returning something wrong.

Passwords are hashed, never stored

Passwords are hashed with bcrypt at cost 12 and are never written in plaintext. A sign-in attempt for an address with no account still runs a full bcrypt comparison against a dummy hash, so response timing cannot be used to work out which email addresses have accounts.

The control we are happiest to be questioned about.

A per-request, tenant-scoped database client

Every authenticated API route is handed a database client bound to the signed-in user. Each tenant-owned model — websites, content, keywords, reports, design assets, store connections — is scoped to that user automatically: another account's record id reads as not-found, and a write aimed at someone else's row throws instead of succeeding.

Explicit ownership checks stay in front of it

The scoped client is defence in depth, not a replacement. Routes still assert that you own the website and the record before they act; the scope is the net that catches a route which forgets. Paths that must span accounts by design — billing webhooks, cron jobs, authentication, admin tools — are deliberately separate and never serve tenant requests.

Internal jobs carry a per-run capability

Long-running generation work is dispatched to internal endpoints that require both a shared server-to-server secret and a capability token minted for that one run. A run's token unlocks that run's row and nothing else.

What leaves the platform, and what is never allowed to.

No model training on your content

Nothing you generate, and nothing we read from your site, is used to train models — ours or a provider's. Model providers receive only the operational context a single task needs, per request, and nothing is accumulated for training.

Credentials never reach a model

Store tokens, API keys and passwords are not part of any prompt. Publishing is a separate server-side step: it decrypts the token, calls your store's API, and drops it. A model never sees it.

The output is yours

Articles, product copy, posts and designs Montu produces for you belong to you. Cancelling revokes nothing you have already published, and we never delete content from your own site or store.

The tokens that can write to your storefront get the strictest handling on the platform.

Tested read-only before it is stored

When you connect WordPress, Shopify, Salla, Zid, Ghost, Webflow or Medium, Montu makes exactly one authenticated read-only call to that platform to prove the credential works before saving it. A bad paste is rejected rather than silently replacing a connection that was working.

Scoped to publishing, revocable by you

Montu writes only the content fields it generated. It does not change pricing, inventory, variants, shipping or store settings, and it never asks for your CMS account password. Revoke Montu's token from the platform's own admin at any time and publishing stops immediately.

When a feature goes, its credentials go with it

A standing rule, not an intention. When social publishing was removed from the product in September 2026, the table holding its encrypted third-party OAuth access and refresh tokens was dropped in the very same change. Keeping credentials for a feature that no longer exists is breach surface with no upside.

The everyday controls — including the one most trust pages quietly overstate.

Security headers and abuse limits

Every response carries a Content-Security-Policy, X-Frame-Options: DENY, X-Content-Type-Options: nosniff, a strict Referrer-Policy, a Permissions-Policy that switches camera, microphone and geolocation off, and preloaded HSTS. Sign-in, sign-up, password reset, contact and store-connection endpoints are rate limited in the database, so a limit holds across every serverless instance instead of per replica.

Guarded outbound requests

Montu fetches URLs you supply — your site, your sitemap, your store's API. Those requests never follow a redirect blindly: each hop is re-parsed and re-resolved, and a hop that lands on a private, loopback or link-local address is refused. That closes the server-side request forgery route into internal infrastructure.

Analytics and advertising tags, stated honestly

The public montuai.com pages load Google Analytics 4, a Meta advertising pixel and a referral-attribution pixel, and we would rather tell you than let you find it in a network tab. What they receive is page views and, for a signed-in visitor, a hashed account identifier. What they never receive is the part that matters: no generated content, no site or keyword data, no store credentials. We do not sell personal data, and the cookie policy lists every tag and how to refuse it.

Sub-processors

Who else touches your data

The full list of providers involved in delivering the product. Each is bound by its own terms, and none of them receives your store credentials.

ProviderWhat it doesWhere
NeonManaged PostgreSQL — account records, brand profile, content metadata and the encrypted store tokens.European Union
VercelApplication hosting and edge delivery for montuai.com and the dashboard.Global edge network
Dodo PaymentsMerchant of record — checkout, subscriptions and invoices. Holds the card data; we never receive it.Provider-managed
OpenAIText and image generation for content, analysis and the design studio.Provider-managed
DataForSEOLive keyword volumes, SERP results and rank data, including Arabic keyword data by country.Provider-managed
FirecrawlFetching and structuring public web pages for site audits and competitor analysis.Provider-managed
ResendTransactional and campaign email delivery.Provider-managed
Cloudflare TurnstileBot check on the signup and contact forms.Global
Google Analytics, Meta, AffonsoSite analytics, advertising measurement and referral attribution on the public marketing pages.Provider-managed

This list changes as the product does. If you have a signed DPA with us, sub-processor changes are notified under it; otherwise write to us at any time and we will confirm the current list — it is the same one you are reading.

Your data

Export it, or take it away entirely

Your account is not a hostage. Everything below is available to any customer, on any plan, without a support negotiation.

Request an export or deletion
  • Take the work with you — articles, product and category copy, keyword sets and reports print or save as PDF straight from the dashboard, and every design downloads as an image file.
  • Request a copy of the personal data we hold about you in a structured, machine-readable format (GDPR Article 20).
  • Request deletion of your account and the personal data attached to it. Email us and we respond within 30 days.
  • Disconnect any connected store or CMS from your dashboard at any time — publishing to it stops immediately.
  • After a cancellation, account data is kept for 90 days so you can reactivate, then deleted on request. Content already published to your own site or store stays yours and is never removed by us.
Full disclosure

What we do not claim

A trust page is only worth reading if it is also willing to say no. These are honest gaps, not marketing.

  • No SOC 2, ISO 27001 or HIPAA

    Montu holds no security certification and no third-party attestation. The controls on this page are real and you are welcome to test any of them, but nobody has audited them on our behalf and we will not imply otherwise. Formal certification is a roadmap item with no announced date.

  • Not PCI-scoped, by design

    We are not PCI DSS certified because we are not in scope. Dodo Payments is the merchant of record and card data never reaches our infrastructure. That is an architecture decision, not a compliance claim.

  • No published penetration test

    The codebase has had a full internal security review — authentication, tenant isolation, injection, SSRF, payments, cryptography and configuration — and the findings from it were remediated. An independent third-party penetration test has not been commissioned yet. It is on the roadmap.

  • Roadmap, not shipped

    Not available today: a customer-facing audit log, SSO and SAML, one-click account deletion from the dashboard (deletion is by email request today), and Content-Security-Policy nonces to replace the inline-script allowance the framework currently needs. We would rather list them here than have a procurement review discover them.

Talk to a person about security

DPA requests, security questionnaires, procurement reviews and vulnerability reports all go to the same address, and a human reads it. If you are reporting a vulnerability, tell us how to reproduce it and how to reach you — we will not pursue anyone who reports in good faith.

contact@montuai.com
让您的营销自动运行

让您的营销自动运行。

注册即送免费代币。连接您的网站,设定目标,剩下的交给 Montu Pilot。

注册即送免费代币无需信用卡随时取消
立即领取 30% 折扣