TranslateRocket
https://translaterocket.com ↗
● my own product · WordPress plugin
Available in the official WordPress.org directory ↗ developer profile: federicodev

Make your entire WordPress site multilingual — free, by hand or with your own AI keys.

A free, open-source translation plugin built from scratch: original code, not a copy. It translates content, menus, theme strings, image alt text and SEO meta, serving every language under a clean URL.

PHPWordPressAI / LLMMultilingualSEO · hreflang36 languagesGPL open-sourcev0.7.9
translaterocket.com
TranslateRocket — website homepage
● how it works

Four steps, from text to language.

The engine works as you browse and saves everything to your own database — always reviewable by hand.

1

Detect

Automatically spots translatable text: content, menus, image alt text, placeholders, ARIA, titles and SEO meta.

2

Translate

By hand in the visual editor, free via Google Translate, or with AI using your own key (DeepL, OpenAI, Gemini, Claude, Google).

3

Save

Translations live in your own database (trrocket_ tables): no text is sent without your action, and everything stays editable.

4

Serve

Every language under a clean URL — /it/, /de/ — with translated slugs, hreflang and a multilingual sitemap for SEO.

● features

Everything you need for a multilingual site.

Unlimited features and languages, with no paid tiers in the plugin.

The huge-safe engine

Above ~20,000 strings the plugin stops loading the entire language map and switches to per-page indexed batch lookups. Memory stays flat at 500 or 500,000 strings. Real-world benchmark on ~500,000 strings:

Classic approach (whole map in memory)Fatal error 256M
💥 the page dies (OOM)
TranslateRocket huge-safe~1.5s warm
✓ page translated, byte-identical output
500k+
strings without OOM
~1.5s
warm render
byte-identical
vs normal mode
constant
memory usage
● translation memory

The plugin that pays for itself.

Before every AI call, TranslateRocket checks whether that text has already been translated somewhere else on the site — another page, an image alt, an interface string. If it has, it reuses it for free instead of sending it back to the API; and duplicate texts within the same batch are paid for only once.

The “Saved by reuse” counter in the admin adds up the characters that reuse never sent to the paid API and converts them into euros at the public list price of the provider you are using (DeepL ≈ €20 per million characters, Google ≈ €18, Claude ≈ €4…). Example: 500,000 characters reused with DeepL active = ~€10 of API calls never paid for. It's not revenue — it's avoided spend, measured transparently.

Saved by reuse
API calls never paid
What it measurescharacters not sent to the API
Cross-page reusefree
Duplicates in the batchpaid ×1
Real example1M reused characters ≈ €20 saved
● stack

Under the hood.

PHP 7.4+WordPress 5.6+Namespace TranslateRocket\\trrocket_ tablesDB schema v3 · text_hashJavaScriptGutenberg blockShortcode + WidgetSVG flagsGPLv2+

A project built from scratch.

TranslateRocket is my WordPress proving ground: engine, editor, AI providers and SEO. If you want something similar for your own project, let's talk.