WPT — Web Page Translate by Charly
Translate the whole open page in place. Google (free, no key) or LibreTranslate with automatic fallback.
Extension Metadata
About this extension
Translate the entire open page in place — no reload, no separate window, no copy-paste.
Click the toolbar icon, pick the target language, and the extension replaces the page text with the translation while preserving the original layout, markup, and formatting. Inline elements inside one paragraph (bold, italics, links) are translated with a single request and distributed back across the nodes.
The extension collects no user data and has no analytics. The text of the page is sent only to the translation service selected by the user (Google, LibreTranslate, or MyMemory) for the sole purpose of translating it.
Click the toolbar icon, pick the target language, and the extension replaces the page text with the translation while preserving the original layout, markup, and formatting. Inline elements inside one paragraph (bold, italics, links) are translated with a single request and distributed back across the nodes.
- Whole-page in-place translation with a single click
- One-click "Restore original" from the progress banner or the popup
- Automatic translation of dynamically loaded content (works on SPAs and lazy-loading pages, including hidden dropdown menus and shadow DOM)
- "Always translate from" option: the extension detects the page language and auto-translates matching pages on load
- Three translation engines with automatic fallback:
- Google (default) — free, no API key required
- LibreTranslate — public server or your own instance (e.g. http://127.0.0.1:5000)
- MyMemory — free fallback API, no key
- In-memory translation cache and HTTP 429 retry with automatic engine fallback
- Code, scripts, and
translate="no"elements are never translated - No account, no registration, no data collection
- About: and file:// pages (without extra permission) and embedded PDFs are not translated
- Very long paragraphs are split into batches (up to 1800 chars for Google, 1200 chars for LibreTranslate)
- The public LibreTranslate server has request limits without a key; host your own instance for heavy use
- If Google temporarily rate-limits the request, translation continues via MyMemory (500 chars per request)
The extension collects no user data and has no analytics. The text of the page is sent only to the translation service selected by the user (Google, LibreTranslate, or MyMemory) for the sole purpose of translating it.
Rated 0 by 0 reviewers
Permissions and data
Required permissions:
- Access your data for all websites
Optional permissions:
- Access your data for translate.googleapis.com
- Access your data for translate.google.com
- Access your data for clients5.google.com
- Access your data for api.mymemory.translated.net
- Access your data for libretranslate.com
- Access your data for 127.0.0.1
- Access your data for localhost
Data collection:
- The developer says this extension doesn't require data collection.
More information
- Add-on Links
- Version
- 1.0.6
- Size
- 31.58 KB
- Last updated
- 10 days ago (Aug 26, 2026)
- Related Categories
- License
- MIT License
- Version History
- Tags
- Add to collection