16. Oktober 2026 · Language & Localization APIs · 6 min read
Ich betreibe diese Seite und ihr Schwesterprojekt in sieben Sprachen. Im Moment sind das 7.206 live übersetzte HTML-Dateien auf der Festplatte zwischen den beiden - kein einmaliger Push, eine laufende Pipeline, die neue Seiten übersetzt, während sie geschrieben werden. Ich habe noch nie einen Cent für eine Übersetzungs-API bezahlt. Dann wurde eines Nachts im August auf der kostenlosen Route, auf der ich sie gebaut hatte, die IP meines Servers von Google für 19 Stunden gesperrt, und ich musste mich hinsetzen und tatsächlich einen Preis dafür festlegen, was die ehrliche Version davon kosten würde.
Beide Seiten nutzen deep_translator's GoogleTranslator klasse, die nicht die kostenpflichtige, verschlüsselte Google Cloud Translation API aufruft - sie kratzt translate.googleapis.com, den gleichen Endpunkt, den die kostenlose Webseite translate.google.com verwendet. Kein API-Schlüssel, kein Quoten-Dashboard, kein SLA. Es ist kostenlos, da Google nie zugestimmt hat, es zu diesem Preis an Sie zu verkaufen. Sie verwenden nur direkt das Backend der Verbraucherseite.
Das hat monatelang gut funktioniert. Dann, am 24. August um 19:56 Uhr, begann jeder Anruf, TranslationNotFound. Ich habe eine direkte curl gegen denselben Endpunkt und erhielt ein http 429 zurück: "Es tut uns leid... Ihr Computer oder Netzwerk sendet möglicherweise automatisierte Abfragen." Kein Google-Ausfall - ein Anti-Bot-Block auf unserer spezifischen IP, der mit ziemlicher Sicherheit durch unser eigenes Volumen verdient wird (stündliche Batch-Jobs, die Hunderte von Seiten in 29 Sprach-Slots übersetzen, die wir intern unterstützen, von denen 7 live sind). Es dauerte ungefähr 19 Stunden, um zu klären.
Hier ist der Teil, der mich wirklich beunruhigt hat, als ich ihn gefunden habe. Die Funktion, die den Übersetzeranruf umschließt, wurde geschrieben, um es dreimal zu wiederholen, dann aufzugeben und die original englischer String -- während der Anrufer die Seite noch als erfolgreich übersetzt protokolliert hat. Das bedeutet, dass jede neue Seite, die während des Blocks erstellt wurde, 19 Stunden lang stillschweigend englischen Text innerhalb einer deutschen oder japanischen Seite versendet hätte, mit Null-Fehlersignal überall. Ein Ausfall, den Sie sehen können, ist eine Unannehmlichkeit. Ein Ausfall, der Erfolg meldet, während er über die Ausgabe lügt, ist derjenige, der tatsächlich die Glaubwürdigkeit einer mehrsprachigen Website beschädigt, und das hätte er auf unbestimmte Zeit getan, wenn ich nicht nachgesehen hätte.
Der Fix wurde hinzugefügt MyMemoryTranslator -- auch frei, auch von deep_translator -- als Fallback innerhalb derselben Funktion. Wenn Googles Schaber seine Wiederholungsversuche erschöpft, wird MyMemory ausprobiert, bevor es aufgibt. Es werden lokal formatierte Codes benötigt (de-DE nicht de), was leicht zu übersehen ist und im Hintergrund keine Ergebnisse liefert, wenn Sie es nicht pro Sprache abbilden.
Ich habe unseren tatsächlichen Live-Fußabdruck gemessen, um das richtig zu beantworten, anstatt zu raten: 7.206 übersetzte Seiten in den sieben Live-Sprachen der beiden Websites (Spanisch, Deutsch, Französisch, Portugiesisch, Russisch, Japanisch, Italienisch), ohne Markup, umfassen etwa 39 Millionen Zeichen echten sichtbaren Text. Der Preis basiert auf der aktuellen veröffentlichten Rate jedes Anbieters pro Zeichen für einen einmaligen Übergang über diesen genauen Schnappschuss:
| Anbieter | Rate | Kosten für unsere 39M CHARS |
|---|---|---|
| Azure-Übersetzer | 10 $/ Mio. Zeichen | 390 |
| Amazon Translate | 15 $/ Mio. Zeichen | 585 US$ |
| Google Cloud Translation (kostenpflichtig, offiziell) | 20 $/ Mio. Zeichen | 780,- € |
| DeepL API, Wachstumsplan | 27,50 $/Million + 26 $/Monat Basis | ≈ $ 1.073+ |
Keine dieser Zahlen ist für ein Unternehmen groß. Sie sind auch nichts für ein Nebenprojekt, und was noch wichtiger ist, sie würden jedes Mal wiederkehren, wenn die Website genügend neue Inhalte hinzufügt, um einen weiteren Übersetzungspass zu benötigen - was, da wir täglich veröffentlichen, eher einer monatlichen Rechnung als einer einmaligen Rechnung entspricht. Bei unserer tatsächlichen Veröffentlichungsrate ist das realistisch 50-150 $/Monat, abhängig vom Anbieter, für immer, für etwas, das der kostenlose Schaber bei $ 0 macht, solange er unter dem Volumen bleibt, das den IP-Block auslöst.
I want to be specific about where the free route actually ends, because "just use the free fallback" isn't a real substitute for a paid API at our scale. MyMemory's anonymous free tier caps out around 5,000 words a day. That's enough to absorb an occasional Google block without anyone noticing. It is nowhere close to enough to translate 7,200+ pages as a primary method -- it would take weeks to get through a backlog that size, assuming the quota resets reliably. It only works in our pipeline because it catches a rare failure window, not because it's a real alternative to GoogleTranslator, let alone to a paid vendor.
While I was in there fixing the outage, a routine audit turned up a translation quality bug that had nothing to do with the 429 block: our German UI's "Share:" label had been translated as "Aktie:" -- which means stock or equity share, not share-this-link -- across 326 pages from an older batch. Italian had the infinitive "Condividere:" instead of the correct imperative "Condividi:" on 330 pages; Russian had the same infinitive/imperative mix-up on 324; French was missing a required space before the colon on 325. All four are the kind of mistake a native speaker catches in two seconds and a generic MT engine, free or paid, just doesn't reliably avoid on short UI strings. I hand-fixed all four directly rather than re-running any translator on them -- for short, high-visibility microcopy like a Share button label, writing the correct phrase once in each language is faster and more reliable than trusting any engine, including the paid ones I priced above.
I'm keeping the free scraper-plus-fallback setup. At $0 against a realistic $50-150/month, the math still favors it, and the visible-failure fix means a future block degrades to "slower" instead of "silently wrong." But I'm treating the 19-hour block as a warning shot, not a one-off: if it starts recurring weekly instead of once every couple of months, the honest move is paying for Azure Translator at roughly $390 for our current backlog and a small monthly trickle after that, not finding a third free workaround. Free infrastructure that depends on an unofficial endpoint not noticing you is a cost you're deferring, not one you've eliminated -- and the day it stops working for good is not a day you want to be choosing a vendor under pressure.
Neu bei der nutzungsbasierten API-Preisgestaltung im Allgemeinen? Beginnen Sie mit der kostenlose API-Kostenleitfäden.
Stellen Sie es selbst bereit: DigitalOcean – 200 $ kostenloses Guthaben ↗ - Hostinger VPS ↗
Die Anzahl der Seiten/Zeichen wird direkt an unserem eigenen Live-Dateibaum gemessen, 16.10.2026. Anbieterpreise, die von der eigenen aktuellen Preisseite jedes Anbieters bezogen werden (Azure, Amazon, Google Cloud, DeepL), Referenzzahlen, keine Live-Angebote - bestätigen Sie die aktuellen Bedingungen direkt mit jedem Anbieter, bevor Sie die Budgetierung vornehmen.