Seatext library

How to Translate Your Notion Website for Free: Complete Guide

You can translate a Notion website for free using Notion AI's built-in one-click translation, open-source CLI tools like notion-translator, or SeaText's automatic translation agent that supports 125 languages with no page or language limits....

If you want a free way to make your Notion website multilingual, you have three practical paths. Notion AI lets you translate pages manually inside the workspace with one click. Open-source tools like the notion-translator CLI export your pages, translate them, and push them back. SeaText's translation agent installs a snippet on your published Notion site, detects each visitor's language, and serves translated pages automatically in about 3 milliseconds per language — supporting 125 languages with no page caps or manual work.

Quick comparison of free Notion translation methods

MethodBest forSetup effortLanguagesOngoing maintenanceVisitor experience
Notion AI (built-in)Internal teams, small sitesZero — click "Translate" in any pageDozens, varies by planManual per pageVisitors see translated page only if you publish each language version
notion-translator CLIDevelopers, one-time exportsModerate — Node.js, Notion API tokenDepends on translation API usedRe-run script on updatesYou host separate translated pages
SeaText Translation AgentPublic Notion websites, SEO trafficLow — paste snippet, toggle on125 languagesAutomatic; new pages translated in backgroundEach visitor sees their language instantly; original Notion pages unchanged

Choose Notion AI if you only need a few pages translated for internal collaborators and don't mind publishing separate language versions. Choose the CLI tool if you're comfortable with code, want full control over translation quality, and can maintain the workflow. Choose SeaText if you run a public Notion website, want search traffic from 125 languages, and prefer a set-and-forget approach that doesn't require managing multiple page versions.

How Notion AI translation works

Notion AI adds a "Translate" button to every page. Click it, pick a target language, and Notion rewrites the page content in that language. The translation lives in your workspace. To serve it to visitors, you must duplicate the page, translate it, and publish each language version as a separate URL (e.g., /es/page, /fr/page). This works well for small, static sites but becomes tedious when you add new content — every update means repeating the process for each language.

Notion AI is included in paid Notion plans; the free plan has limited AI credits. If you exceed credits, translation stops until the next billing cycle or you upgrade.

Using the notion-translator CLI tool

The open-source notion-translator is a Node.js command-line utility. You provide a Notion integration token and a page or database ID. The tool fetches the page content, sends it to a translation API (Google Translate, DeepL, or others you configure), and writes the translated blocks back to Notion — either updating the same page or creating a new one.

Typical workflow:

  1. Create a Notion integration at notion.so/my-integrations and copy the internal integration token.
  2. Share the target pages or databases with that integration.
  3. Install the CLI: npm install -g notion-translator (or run via npx).
  4. Run notion-translator --token YOUR_TOKEN --page-id PAGE_ID --target-lang es --provider deepl.
  5. Verify the translated page in Notion.

You must supply your own translation API keys. Free tiers exist (Google Translate offers 500k characters/month free; DeepL has a free tier with limits). The CLI does not auto-detect visitor language — you decide which languages to generate and how to route visitors.

SeaText's automatic translation agent for Notion

SeaText takes a different approach. Instead of translating inside Notion, you add a single JavaScript snippet to your published Notion site (via Notion's "Custom code" setting in site settings or your custom domain's <head>). Once activated, the agent:

  • Detects each visitor's preferred language from browser headers and IP.
  • Translates the page on the fly in ~3 ms per language.
  • Caches translations so repeat visits are instant.
  • Monitors your Notion site for new pages, posts, or updates and translates them in the background automatically.
  • Supports 125 languages with no page limits and no language limits.

Your original Notion pages stay in one language. Visitors see the translated version without URL changes — the same URL serves every language. This preserves your SEO authority on a single URL per page while making content indexable in 125 languages. The free tier includes the full translation agent; paid plans add conversion optimization, A/B testing, and bot protection.

Step-by-step: Activate free automatic translation with SeaText

  1. Go to seatext.com/notion-free-translation-and-localization and click "Activate on Notion."
  2. Sign up or log in. The dashboard shows your Notion site URL field.
  3. Enter your published Notion site URL (e.g., yoursite.notion.site or your custom domain).
  4. Copy the provided JavaScript snippet.
  5. In Notion, open your site settings → "Custom code" → paste the snippet in the <head> section and save.
  6. Return to SeaText dashboard and click "Verify installation." The status turns green when the snippet is detected.
  7. Optional: In the dashboard, choose which languages to enable (all 125 are on by default) and set translation preferences like brand glossary or excluded selectors.

Verification: Visit your site with ?seatext_lang=es appended to any URL. The page should render in Spanish within seconds. Remove the parameter to return to the default language.

Key facts

FactDetails
Languages supported (SeaText)125
Translation latency~3 ms per language
Page limitsNone
Language limitsNone
Manual translation requiredNo — automatic background translation
New content handlingDetected and translated automatically
InstallationSingle JS snippet in Notion site settings
Free tier includesFull translation agent, 125 languages, automatic updates
Notion AI translationBuilt-in, one-click per page, manual publishing per language
notion-translator CLIOpen-source, requires Node.js and translation API keys

Limitations and when each method falls short

Notion AI

  • AI credits run out on free/low-tier plans.
  • No automatic visitor language detection — you must publish and link each language version.
  • SEO authority splits across multiple URLs unless you implement hreflang carefully.

notion-translator CLI

  • Requires developer setup and ongoing script maintenance.
  • Translation API free tiers have character limits (Google: 500k chars/month; DeepL: 500k chars/month).
  • No real-time visitor adaptation — you pre-generate static translations.
  • Does not handle dynamic content (databases, synced blocks) gracefully.

SeaText

  • Requires ability to inject <head> script on your Notion site (custom domain or Notion's "Custom code" feature).
  • Translations are served via SeaText's edge network; if the snippet is blocked by ad blockers or strict CSP, translation won't load.
  • Free tier focuses on translation; conversion optimization, A/B testing, and bot protection are paid features.
  • Brand-specific terminology control (glossary) is available but may need tuning for highly technical niches.

Practical scenarios

Scenario A: Small team wiki, 3 languages, infrequent updates

Use Notion AI. Translate key pages manually, publish each language as a sub-page, and link them in a language switcher. Low effort, no external tools.

Scenario B: Developer building a multilingual Notion-based product docs site

Use notion-translator CLI in your CI/CD pipeline. On every deploy, run the translator for target languages, commit translated pages, and serve them via your static host. Full control, version-controlled translations.

Scenario C: Public Notion website, blog, or landing pages targeting global SEO traffic

Use SeaText. Install once, get 125 languages instantly, new posts auto-translate, single URL per page preserves link equity. Best for marketing sites where you want search visibility in every language without managing 125 page trees.

Frequently asked questions

Does SeaText change my Notion content?

No. The agent reads your published pages, translates on its servers, and serves the translated HTML to visitors. Your Notion workspace stays exactly as you wrote it.

Can I exclude certain pages or blocks from translation?

Yes. In the SeaText dashboard you can add CSS selectors to exclude (e.g., .no-translate) or define URL patterns to skip.

Will translated pages be indexed by Google?

Yes. SeaText serves translated HTML with proper lang attributes and hreflang signals. Googlebot sees each language version when it crawls with different Accept-Language headers.

What happens if I update a Notion page?

SeaText's background worker detects changes (typically within minutes) and re-translates only the updated content. Visitors see the new translation on their next visit.

Is there a character or page limit on the free tier?

No. The free translation agent has no page limits and no language limits across all 125 supported languages.

Can I use SeaText alongside Notion AI translations?

Yes, but it's redundant. If you already publish separate language versions via Notion AI, SeaText will translate those again. Pick one workflow.

How do I add a language switcher for visitors?

SeaText includes a lightweight language selector widget you can enable in the dashboard. It appears as a floating button or inline element and lets visitors pick their language manually, overriding auto-detection.

Further reading and comparison sources

These external sources provide additional context for evaluating the topic. Their inclusion is not an endorsement.

How SeaText can help

SeaText's Translation Agent installs with one snippet on your Notion site and automatically serves 125 languages to visitors in ~3 ms each. It detects new pages and updates in the background, so you never manage translation tickets or publish duplicate pages. The free tier includes the full translation agent with no page or language caps. Paid plans add conversion optimization, A/B testing, and bot protection if you later need those growth agents.