# General Translation Knowledge Base: General Translation vs. Locize: quale scegliere?
URL: https://generaltranslation.com/it/kb/general-translation-vs-locize.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Locize è un sistema di gestione delle traduzioni sviluppato dai creatori di i18next che distribuisce le traduzioni tramite CDN, raccoglie le nuove chiavi dall'app in esecuzione e offre la traduzione con l'AI e un editor contestuale. La libreria i18n e le sue chiavi, però, restano a tuo carico. General Translation può essere la tua libreria i18n e occuparsi anche della traduzione, oppure tradurre i file i18next che hai già.
Category: Strumenti per il flusso di lavoro
Last updated: 2026-10-16
Authors: Kevin Wu, Jackie Chen
Published: 2026-10-16

Locize è un sistema di gestione delle traduzioni (TMS) sviluppato dal team di i18next. La tua app continua a usare i18next (o un&#39;altra libreria i18n), Locize archivia le chiavi e le relative traduzioni, l&#39;AI o i tuoi traduttori completano ogni lingua e l&#39;app carica i risultati dalla CDN di Locize: così una traduzione corretta va online senza bisogno di un nuovo deploy. Locize affianca la tua libreria i18n senza sostituirla, quindi la configurazione della libreria, le chiavi e l&#39;integrazione restano a carico dei tuoi sviluppatori. General Translation può coprire entrambi i ruoli: fornire le proprie librerie i18n open source insieme alla traduzione, oppure occuparsi solo della traduzione dei file i18next che hai già.

## Video

The video is narrated in English, with English captions.

[General Translation vs. Locize: which should you use?](https://caxecubb9c64cezv.public.blob.vercel-storage.com/films/kb-general-translation-vs-locize.mp4) (45 s)

Locize is a TMS from the creators of i18next that delivers translations from a CDN, collects new keys from your app, and adds AI translation, while you still maintain the i18n library and its keys. General Translation can be your i18n library and translate it, or translate the i18next files you already have: point the CLI at your JSON files and run `npx gt translate`, or move a feature into a `<T>` component with no keys to name.

## I punti di forza di Locize

* **Progettato per i18next.** [`i18next-locize-backend`](https://github.com/locize/i18next-locize-backend) carica le traduzioni dalla CDN di Locize e, con l&#39;opzione `saveMissing` di i18next, invia le nuove chiavi a Locize durante lo sviluppo. [`i18next-cli`](https://github.com/i18next/i18next-cli) include i comandi di sincronizzazione, download e migrazione per Locize, e il suo comando `localize` racchiude le stringhe hardcoded in `t()`, estrae le chiavi, collega un progetto Locize e richiede la traduzione AI in un&#39;unica esecuzione.
* **Aggiornamenti senza ridistribuire.** Le traduzioni vengono pubblicate su una CDN (una CDN Standard in tutti i piani, una CDN Pro a partire dal piano Growth), con una [durata della cache configurabile per ogni versione](https://www.locize.com/docs/integration/cdn-types-standard-vs-pro) e la possibilità di una pubblicazione privata, accessibile solo tramite chiave API.
* **Versioni.** Un progetto ha una versione di lavoro `latest`, una versione `production` ed eventuali versioni personalizzate, come `staging` o una per ogni rilascio dell&#39;app mobile, così puoi promuovere o ripristinare le traduzioni indipendentemente dal codice. (Vedi [versionamento di Locize](https://www.locize.com/docs/versioning).)
* **Modifica in contesto.** Il [pacchetto `locize`](https://github.com/locize/locize) aggiunge al tuo sito un popup di modifica quando l&#39;URL include `?incontext=true`, e gli screenshot vengono associati alle chiavi tramite riconoscimento del testo.
* **Traduzione AI e automatica.** [Il servizio AI di Locize](https://www.locize.com/ai), oppure la tua chiave OpenAI, Gemini, Mistral o DeepL, traduce rispettando la tua guida di stile, il glossario e la memoria di traduzione, con stima della qualità, revisione AI e un flusso di lavoro di revisione umana.
* **Chiavi plurali per lingua.** Per il JSON di i18next, Locize [genera le chiavi plurali](https://www.locize.com/docs/integration/i18n-formats/pluralization) richieste da ciascuna lingua di destinazione (come `_few` e `_many` per il polacco) e mostra tutte le forme nel suo editor.
* **Oltre i18next.** [`locize-cli`](https://github.com/locize/locize-cli) importa ed esporta diversi formati, tra cui XLIFF, Android XML, Apple `.strings`, PO, RESX, Fluent e Java properties, e Locize fornisce esempi per react-intl, vue-i18n e Lingui. Sono disponibili anche una GitHub Action, un server MCP e un plugin per Figma.

## Cosa Locize lascia ancora a carico dei tuoi sviluppatori

Ecco `saveMissing` con `i18next` 26.4.7 e `i18next-locize-backend` 10.0.3, durante il rendering in spagnolo di una chiave che Locize non ha ancora mai visto. La funzione di richiesta simula i server di Locize e registra ogni chiamata nel log:

```js title="test.mjs"
import i18next from 'i18next';
import Backend from 'i18next-locize-backend';

// CDN simulata: per ora inglese e spagnolo hanno entrambi una sola chiave.
const cdn = {
  en: { inbox: { title: 'Inbox' } },
  es: { inbox: { title: 'Bandeja de entrada' } },
};

await i18next.use(Backend).init({
  lng: 'es',
  fallbackLng: 'en',
  saveMissing: true,
  backend: {
    projectId: 'demo-project',
    apiKey: 'demo-write-key', // chiave di scrittura: solo per lo sviluppo
    referenceLng: 'en',
    allowedAddOrUpdateHosts: () => true,
    reloadInterval: false,
    request: async ({ url, method, body }) => {
      console.log(method, url, body ? JSON.stringify(body) : '');
      const lng = url.match(/latest\/(\w+)\//)?.[1];
      return { status: 200, data: JSON.stringify(method === 'GET' ? cdn[lng] ?? {} : {}) };
    },
  },
});

// Nuovo testo aggiunto nel codice, con un valore predefinito in inglese
console.log(i18next.t('inbox.title'));
console.log(i18next.t('inbox.empty', 'No messages yet.'));
await new Promise((r) => setTimeout(r, 6000)); // saveMissing usa il debounce
```

```text title="Output"
GET https://api.lite.locize.app/demo-project/latest/es/translation
GET https://api.lite.locize.app/demo-project/latest/en/translation
Bandeja de entrada
No messages yet.
POST https://api.lite.locize.app/missing/demo-project/latest/en/translation {"inbox.empty":"No messages yet."}
```

Questo esempio mostra cosa registra `saveMissing`: la chiave in inglese e il relativo valore. La traduzione e la pubblicazione avvengono dopo la registrazione. Un&#39;integrazione con Locize collega questi passaggi:

1. Configura i18next, assegna un nome di chiave a ogni stringa e chiama `t()` passandole quella chiave.
2. Invia le nuove chiavi a Locize con `saveMissing` in fase di sviluppo (per impostazione predefinita è limitato a `localhost` e [la chiave di scrittura non deve mai finire in produzione](https://www.locize.com/docs/guides/going-to-production)) oppure con un comando di sincronizzazione nella CI.
3. Traduci con l&#39;AI o con i tuoi traduttori, revisiona i risultati e pubblicali nella versione letta dalla tua app.
4. Carica le traduzioni dalla CDN a runtime, oppure scaricale nella tua build, e registra ogni nuova lingua nell&#39;app.

Il contesto che arriva a un traduttore o all&#39;AI è costituito dalla chiave, dal suo valore in inglese, da eventuali note di contesto e dagli [screenshot associati](https://www.locize.com/docs/context), non dal componente che renderizza la stringa.

I piani Locize prevedono un prezzo base mensile che include parole, download dalla CDN, lingue, namespace e versioni. Nei piani più grandi si possono acquistare blocchi aggiuntivi di parole e download, mentre la traduzione con AI e quella automatica sono tariffate a token o a carattere. (Vedi i [prezzi di Locize](https://www.locize.com/pricing), verificati a ottobre 2026.)

## General Translation per i team che usano i18next

Per provare General Translation non devi riscrivere nulla. La CLI rileva `i18next` nel tuo `package.json` e traduce i file JSON preservando la sintassi di interpolazione di i18next (o la sintassi ICU, se usi `i18next-icu`):

```json title="gt.config.json"
{
  "defaultLocale": "en",
  "locales": [
    "es"
  ],
  "files": {
    "json": {
      "include": [
        "locales/[locale]/*.json"
      ]
    }
  }
}
```

[`npx gt translate --dry-run`](/docs/cli/reference/commands/translate) individua `locales/en/translation.json` e [`npx gt translate`](/docs/cli/reference/commands/translate) scrive `locales/es/translation.json`. Usa questo flusso di lavoro basato su file per i messaggi in cui sorgente e destinazione hanno la stessa struttura di chiavi. Un file di metadati associato può aggiungere a qualsiasi chiave una nota `context` o un limite `maxChars`. Consulta [Metadati associati alle chiavi](/docs/cli/reference/keyed-metadata).

Oppure fai un passo in più e usa General Translation anche come libreria. [`<T>`](/docs/react/reference/components/t) racchiude il JSX e lo traduce in-place, mentre [`useGT`](/docs/react/reference/hooks/use-gt) gestisce le stringhe, così non devi assegnare nomi alle chiavi. [`useTranslations`](/docs/react/reference/hooks/use-translations) offre un dizionario basato su chiavi per i team che lo preferiscono. `gt-next`, `gt-react` e `gt-vue` sono distribuiti con licenza MIT, non si basano su i18next e funzionano anche senza un account General Translation.

## Locize e General Translation a confronto

| Funzionalità                        | Locize                                                                                                                        | General Translation                                                                                                                                |
| ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| Che cos&#39;è                       | Un TMS da abbinare a i18next o a un&#39;altra libreria i18n                                                                   | Librerie i18n open source con traduzione basata sull&#39;IA, oppure traduzione dei file che già utilizzi                                           |
| Dove si trovano le stringhe         | Chiavi nel codice; valori in Locize                                                                                           | Nel codice, all&#39;interno di [`<T>`](/docs/react/reference/components/t), oppure nei file di risorse che hai già                                 |
| Come vengono aggiunti i nuovi testi | `saveMissing` in fase di sviluppo, oppure comandi di sincronizzazione in CI                                                   | [`npx gt translate`](/docs/cli/reference/commands/translate) durante la build, oppure pull request di [Locadex](/docs/platform/locadex/quickstart) |
| Chi traduce                         | L&#39;IA di Locize, la tua chiave di IA o di traduzione automatica, oppure i tuoi traduttori                                  | L&#39;IA, con il contesto ricavato dal codice, dal Glossario e dai prompt personalizzati, e la revisione del tuo team nella dashboard              |
| Contesto per ogni stringa           | Chiave, valore in inglese, note di contesto, screenshot, glossario e guida di stile                                           | Struttura JSX marcata con le librerie inline; metadati associati alle chiavi per i cataloghi; Glossario e prompt personalizzati condivisi          |
| Consegna                            | CDN per impostazione predefinita, con gestione delle versioni; oppure download nella build                                    | File inclusi nel bundle, oppure aggiornamenti pubblicati tramite la CDN di General Translation senza ridistribuire l&#39;app                       |
| Prezzi                              | Piani a livelli in base a parole, download dalla CDN, lingue e versioni; IA e traduzione automatica come ricariche aggiuntive | [Traduzione a consumo](https://generaltranslation.com/pricing)                                                                                     |

## Perché i team scelgono General Translation invece di Locize

General Translation consente a un team che usa i18next di adottare prima la generazione delle traduzioni e la revisione nella Dashboard, per poi passare ai testi inline quando vuole liberarsi anche della gestione delle chiavi.

* **Più veloce.** Esegui la traduzione prima della build, così i nuovi testi vengono rilasciati in tutte le lingue che supporti. La CLI riutilizza le traduzioni esistenti e traduce solo i contenuti nuovi o modificati; per aggiungere una lingua basta una riga in `gt.config.json`.
* **Costi di gestione inferiori.** Parti dai file i18next che già mantieni. Spostando poi una funzionalità su [`<T>`](/docs/react/reference/components/t), non dovrai più assegnare nomi alle chiavi né mantenere un dizionario sorgente allineato ai relativi componenti.
* **Qualità superiore.** Aggiungi una nota di contesto a una chiave del catalogo, oppure usa blocchi [`<T>`](/docs/react/reference/components/t) inline per includere nella traduzione la struttura JSX della frase e i rami del plurale. Un [Gruppo di contesto](/docs/platform/dashboard/guides/defining-context-for-translations) condiviso mantiene coerente la terminologia del prodotto tra i progetti dell&#39;app e della documentazione, mentre i revisori modificano i risultati nella Dashboard.
* **Rischio minore.** Mantieni i18next e le traduzioni già revisionate mentre valuti General Translation. I file di traduzione inclusi nel bundle non effettuano chiamate a General Translation in fase di runtime; inoltre, le sue librerie JavaScript con licenza MIT funzionano anche senza un account, se fornisci tu le traduzioni.

Con General Translation, Cursor distribuisce oltre 14 impostazioni regionali tra web e documentazione. (Vedi le [distribuzioni in produzione](https://generaltranslation.com/enterprise).)

## Quando Locize è la scelta migliore

Scegli Locize se i traduttori vogliono modificare i testi direttamente sul sito live, se mantieni versioni di traduzione separate per ogni rilascio di un&#39;app mobile o se scambi file XLIFF, Fluent o Java properties. Scegli le librerie inline di General Translation se vuoi testi sorgente leggibili direttamente nei componenti e includere nella traduzione la struttura JSX contrassegnata. Prova la sua CLI con i cataloghi esistenti se vuoi valutare la traduzione e la revisione nella Dashboard prima di cambiare libreria.

## Passare da Locize a General Translation

Scarica le traduzioni attuali con `locize-cli` e conservale nel tuo repository, poi fai puntare `gt.config.json` ai file in inglese ed esegui [`npx gt upload`](/docs/cli/reference/commands/upload) per inviare alla piattaforma i testi sorgente e le traduzioni esistenti. A quel punto puoi continuare a usare i18next e lasciare che la CLI traduca le nuove chiavi, oppure migrare a [`<T>`](/docs/react/reference/components/t) una funzionalità alla volta. (Consulta [Migrare le librerie i18n](/docs/react/guides/migrating-i18n-libraries).) Puoi portare con te anche i termini del Glossario: l&#39;importazione nei gruppi di contesto supporta file CSV, TSV, JSON e di testo.

## Punti chiave

* Locize, dei creatori di i18next, è un TMS solido per le app i18next, con distribuzione tramite CDN, `saveMissing`, versioni, modifica in contesto e traduzione con IA.
* Si affianca alla tua libreria i18n e ai suoi cataloghi basati su chiavi; traduzione, revisione e pubblicazione si configurano attorno a questi cataloghi.
* General Translation può tradurre i file i18next che hai già, oppure fare da libreria i18n e da soluzione di traduzione insieme, sfruttando il contesto del codice e distribuendo tutte le lingue a ogni rilascio.

## Related questions

- [General Translation vs. i18next, react-intl e next-intl: quale libreria i18n scegliere?](https://generaltranslation.com/it/kb/general-translation-vs-i18n-libraries.mdx): Le librerie open source come i18next, react-intl e next-intl non traducono nulla. Si limitano a visualizzare le traduzioni che fornisci in un file di catalogo per ciascuna lingua, scritte da te, dai tuoi traduttori o da un servizio esterno. Anche le librerie di General Translation sono open source e svolgono lo stesso compito, ma General Translation si occupa anche della traduzione, usando il tuo codice come contesto.
- [General Translation e un TMS (Crowdin, Lokalise, Phrase) a confronto](https://generaltranslation.com/it/kb/general-translation-vs-tms.mdx): Scegli General Translation quando gli sviluppatori vogliono una generazione delle traduzioni, un contesto derivato dal codice e una revisione collegati ai rilasci del prodotto. Puoi mantenere i cataloghi e la libreria di rendering che usi già, oppure scrivere JSX inline senza chiavi di traduzione. Un TMS è adatto a programmi incentrati su fornitori linguistici, editor CAT e scambio di file XLIFF; le sue integrazioni possono automatizzare il trasferimento dei file.
- [General Translation vs. Tolgee: quale scegliere?](https://generaltranslation.com/it/kb/general-translation-vs-tolgee.mdx): Tolgee combina messaggi basati su chiavi, modifica in contesto e traduzione con IA in una piattaforma che puoi ospitare in autonomia. General Translation mantiene i testi leggibili direttamente nei tuoi componenti e genera le traduzioni dal JSX contrassegnato, così puoi pubblicare nuovi testi in ogni lingua senza dover gestire le chiavi dei messaggi.
- [General Translation vs. Weblate: quale scegliere?](https://generaltranslation.com/it/kb/general-translation-vs-weblate.mdx): Weblate è una piattaforma di localizzazione self-hostable basata su Git, pensata per tradurre i file di un repository insieme a una community o a un team. General Translation integra la generazione delle traduzioni nello sviluppo e nei rilasci, sfruttando JSX contrassegnato e un contesto di prodotto condiviso. Puoi mantenere i tuoi file gettext oppure adottare la scrittura inline per eliminare anche la manutenzione del catalogo di origine.
- [Posso fare i18n senza file di traduzione?](https://generaltranslation.com/it/kb/i18n-without-translation-files.mdx): Sì. Le librerie gt-react e gt-next di General Translation gestiscono l'i18n in React e Next.js senza chiavi di traduzione e senza dover mantenere un file JSON per ogni lingua. I testi restano inline nel JSX all'interno del componente `<T>` e il comando gt translate genera le traduzioni per ogni lingua durante la build, sfruttando il contesto del tuo codice. Locadex può mantenerle aggiornate tramite pull request.

## Previous and next questions

- Previous question: [General Translation vs. i18next, react-intl e next-intl: quale libreria i18n scegliere?](https://generaltranslation.com/it/kb/general-translation-vs-i18n-libraries.mdx)
- Next question: [General Translation vs. nestjs-i18n: quale scegliere?](https://generaltranslation.com/it/kb/general-translation-vs-nestjs-i18n.mdx)

## Sitemap

See the [Knowledge Base sitemap](https://generaltranslation.com/it/kb/sitemap.md) for every article.
