Local-first YouTube metadata translation

YT Localizer

YT Localizer by Vagabondity Walks

A free-to-use, source-available YouTube metadata translator for safely translating video titles and descriptions on your own computer.

NO SUBSCRIPTIONS OR FEESProvider usage charges may apply
Open setup guide

No YT Localizer account, subscription, or hosted middleman.
You use your own Google and translation-provider accounts.

YT Localizer video library showing channel videos, filters, translation provider controls, and localization status
Functional app interface for your localizations

Why you should localize locally?

Because you don't want to hand your channel to a service you cannot inspect.

Translating titles and descriptions requires a broad YouTube authorization, and permissions required can cover much more than localization - including changing channel content and deleting videos. With an unfamiliar website, you must trust its servers, its private code, and everyone who can access them. Will you?

The risk with an unknown service ❌

  • Your channel token is processed or stored on infrastructure you do not control.
  • You cannot inspect what its closed server code does with that access.
  • An update, ownership change, or security breach may put your channel at risk.
  • For most of such services they share no information about its developer

What YT Localizer gives you ✅

  • The app runs on your computer and connects directly to YouTube and your chosen translator.
  • Your credentials stay in local files, with no YT Localizer account or intermediary server.
  • The source code is available for you to inspect.
  • The idendity of author is known and you can always reach out with feedback or questions.

Features

Localize in batches

Translate one video, selected videos, the current page, or the entire channel in one run.

Keep access local

Your OAuth token, settings, and provider keys stay in local files on your computer.

Choose your translator

Use your own DeepL or Google Cloud Translation account for each localization run.

Live progress tracking

Follow every video-and-language pair as it is processed, including published, skipped, and failed localizations with their reasons.

Don't need to pay

YT Localizer has no fee or subscription. Translation providers offer generous free allowances that are usually enough for hundreds of video localizations; paid usage matters only for much larger volumes.

Original content protection

The original video, thumbnail, title, and description remain unchanged; only additional language localizations are published.

Choose with context

See what already exists before publishing anything.

Review source languages, provider compatibility, and existing localizations. Existing translations are skipped unless you deliberately choose to replace them.

  • Unsupported language combinations are disabled.
  • Full-length videos and Shorts can be filtered separately.
  • Provider connections can be tested before a real run.
  • Usage and YouTube quota information remain visible.
YT Localizer language selector showing available languages and existing localizations

Frequently Asked Questions

What YouTube metadata can YT Localizer translate?

It translates YouTube video metadata — titles and descriptions — and publishes additional language versions through YouTube's localization fields. The original video, thumbnail, source title, and source description remain unchanged.

Existing localizations are skipped by default. Replacing them requires deliberately enabling the option to retranslate existing languages.

Why should a YouTube localization tool run locally?

A YouTube channel may be your profession, creative archive, or a project built over years. YouTube does not provide a permission limited only to title and description localizations.

Important: the authorization used to update video metadata also includes permission to permanently delete videos from your channel.

YT Localizer lets you create the Google Cloud project and OAuth client yourself. The app runs on your computer and connects directly to YouTube and the translation provider you choose, without giving a hosted YT Localizer service access to your channel.

Why does Google show broad YouTube permissions?

YouTube does not offer a narrow permission specifically for localization fields. The scope accepted for updating video metadata can also authorize actions such as video deletion.

The source code is publicly inspectable and contains no video-deletion API calls. YT Localizer updates localization fields only; it does not upload, replace, or delete videos.

What data leaves my computer?

Only the text being translated is sent to your chosen translation provider. The finished localization is sent directly to YouTube through YouTube Data API v3.

Your private settings, OAuth token, and API credential files are stored locally. The project does not require a YT Localizer account or a YT Localizer server between those direct connections.

Does YT Localizer collect data?

No. YT Localizer has no built-in analytics or telemetry and does not send usage information, channel details, credentials, or translation history to a YT Localizer server.

Usage counters and application settings are stored locally on your computer. Only the data required to perform a localization is sent directly to the services you configure: your chosen translation provider and YouTube.

Is YT Localizer open source?

It is source-available, free-to-use proprietary software, not open source under the OSI definition. The source is public so you can inspect how credentials and YouTube access are handled.

You may download and run the unmodified app at no charge for channels you own or are authorized to manage. Redistribution, resale, rebranding, modified releases, competing products, and offering it as a hosted service are restricted. Your translations and other output remain yours to use and monetize.

Read the complete license

Is it really free?

Yes. YT Localizer has no purchase price, subscription fee, or app-imposed limit. Translation providers offer generous free allowances that are usually enough for hundreds of video localizations, so getting started and using the app at normal volumes is effectively completely free.

You only need to consider paid provider usage when translating at much larger volumes. Provider plans and free allowances can change, so check the current terms of the plan you choose before starting a large batch.

Which translation provider should I use?

DeepL is the simplest starting option because it requires only an API key. Google Cloud Translation is also supported and uses a service-account JSON key with billing enabled in your Google Cloud project.

You can configure either provider or both, test their connections, and select the provider for each localization run.

Are there translation or YouTube limits?

YT Localizer adds no artificial limit. Translation volume depends on your provider plan, while publishing depends on YouTube's daily API quota.

If the YouTube quota is exhausted, the app enters a limited mode, keeps cached channel data available, shows the expected reset time, and lets you reconnect after access is restored.

How difficult is the first setup?

It usually takes about 10 minutes and requires no previous developer experience. Most of the time is spent creating your own Google Cloud project, OAuth client, and translation-provider access.

After setup, starting the app normally takes one Terminal command. The step-by-step setup guide includes separate instructions for macOS and Windows.

What runs on my computer?

uv installs Python 3.12 and the exact locked dependencies into the project environment. The Flask interface listens only on 127.0.0.1:5050, which points back to your own computer rather than exposing a public web server.

Private files such as settings.toml, Google credential JSON files, and token.pickle are excluded by .gitignore. They should never be published or shared.

How is this different from a hosted service such as ReTranslate.ai?
  • Access: YT Localizer uses your own OAuth client locally instead of granting channel access to a hosted localizer.
  • Transparency: its complete application source can be inspected.
  • Limits: the app has no subscription or app-imposed translation cap; provider and YouTube quotas still apply.
  • Workflow: it supports multi-video batches, provider compatibility checks, and detailed results for every attempted localization.

The tradeoff is that you must complete the one-time local setup yourself. YT Localizer also focuses specifically on video titles and descriptions; it does not translate subtitles, channel metadata, or playlist metadata.

Open the full comparison table

Where can I report a problem or ask for help?

Create a GitHub Issue and include the full error shown in Terminal plus the steps that led to it.

Never include API keys, OAuth credential files, settings.toml, or token.pickle.

Try it on one video.

Follow the setup guide, test one language, and scale up when you are happy with the result.