Privacy Policy

BABA Real-Time Chat Translator
Publisher: BABA SOFTWARE, Republic of Korea
Effective date: 26 September 2026
Contact: baba_software@hotmail.com

한국어로 보기

1. Summary

BABA Real-Time Chat Translator (“the app”) reads a rectangle of your screen that you position yourself, recognizes the messages inside it, and translates them. This section states the whole of it in short; the sections that follow give the detail.

2. Screen capture

The app's window has a transparent opening — the reading hole — which you place over the message list of your chat program. The rectangle of the screen behind that opening is what the app captures. Its position and size are yours to set. Nothing outside it is captured, and the app never captures the whole screen.

Capture happens while translation is running, which begins when you press the start button and ends when you press it again. The interval between captures is 1.5 seconds by default and can be changed in settings. When the characters are read on your own computer — by the recognizer built into Windows, or by taking the text directly from the window — nothing leaves your device, so the app checks more often than that setting, as frequently as every 0.3 seconds. Images captured this way do not leave your computer.

There are a few further captures, and they are stated here so the description is complete. When you stop translating, the translations already on screen are deliberately left in place so you can finish reading them. While they remain, the app takes a 48×48 pixel thumbprint of the same rectangle once per second and compares it with the previous one, so that it can remove those translations when the conversation underneath them has moved on. No text recognition is performed on these, and nothing about them is transmitted. They are compared on your device and discarded.

Two further short captures happen while translation is running. While the conversation is scrolling, the app checks the same rectangle every 0.2 seconds for up to 3 seconds, so that the translations on screen follow the conversation underneath them. And after you send a message with Enter, it checks every 0.12 seconds for up to 2.5 seconds, until that message has been drawn on screen. Both are of the same rectangle, both are handled on your device, and neither is transmitted.

Captured images exist only in your computer's memory. There is no point in the app at which a captured image is written to a file, a log, a cache, or a temporary file.

3. The app captures an area, not a window

This is a limitation you should understand before you use the app, and we state it plainly rather than leaving it to be discovered.

The limitation described below applies to reading by screen capture. While the app is taking text directly from the window, it reads only the text published by the program you pointed it at, so the contents of another program sitting over that area are not read. But if that method stops working, the app falls back to screen capture on its own (section 4), and from that point the limitation below applies again.

Because the app captures a rectangle of the screen rather than one specific window, anything that comes to sit in front of that rectangle is captured as well. The app watches which window occupies the area and stops reading when a different program covers it, but that watching is not complete:

What you can do: keep the reading hole tight around the message list, check what is behind it before you press start, and press stop when you have finished the conversation.

4. When a picture of your screen leaves your device

The app obtains conversation text in one of two ways, and which one is in use decides whether an image is transmitted.

First, taking the text directly from the window. Most chat programs publish the text on their screen to the operating system for the benefit of assistive technologies such as screen readers. The app reads that directly. In this mode no image is transmitted anywhere; only the sentences taken from the window go to your translation service.

That channel has a different name on each operating system. The Windows version uses UI Automation; the Android version uses the accessibility service (AccessibilityService). On Android this is off by default and works only once you turn the app's accessibility service on yourself in Android settings. With it on, the app receives the contents of whatever chat app is open on screen and uses them for translation only. They are not collected or stored for anything else, they never reach the maker of this app, and password fields are not read. This app is not an accessibility tool; it uses that channel to read the text it has to translate. You can turn it off again in Android settings at any time, and with it off the app works by the second method below.

On Android, no picture leaves the device even with the second method. The Android version always recognizes characters with an on-device recognizer (Google ML Kit); it has no path for sending a picture to your translation service or anywhere else. The table below and “How to keep images on your device” apply to the Windows version.

The app keeps capturing the screen while it reads this way. It does so to tell whether the screen has changed, to measure how far the conversation has scrolled, and to find the left and right edges of a message in programs that do not draw speech bubbles. It does not read characters out of those pictures, and it does not transmit them anywhere.

Second, screen capture followed by character recognition. Used when the chat program does not publish its text, or when reading the published text fails. Only in this case may an image be transmitted, under the conditions in the table below.

The app decides which to use. When translation starts, it compares the capture it already has against the text taken from the window, and settles on one method. The character recognition used for that comparison is always the recognizer built into Windows — this is a check you did not ask for, and it must never place a charge on your account. If nothing can be taken from the window, the app reads by picture and retries the comparison at intervals of up to 60 seconds, so the comparison may happen many times in a single run. The readings used for it are discarded immediately: neither stored nor transmitted, leaving only the decision and a few numbers.

If no sentence comes from the window for 30 seconds, the app reads the capture it already has once, with the Windows recognizer, to see whether there are characters on screen. If there are, the conversation is not quiet — the reading has failed — so the app returns to screen capture and marks the frame to say so. That switch is not reversed for the rest of the run.

You can pin the app to screen capture at any time under “Reading method” in settings.

The table below applies only when characters are being read from a screen capture.

SituationWhat reads the pictureDoes the picture leave your device?
You have named the language to read, and Windows has a recognizer installed for it The recognizer built into Windows, on your device No. The picture is not transmitted anywhere.
The language is set to automatic detection, or Windows has no recognizer for the language you named Google's model, which is shown the picture Yes. The captured image is sent to Google as a PNG.

Before an image is sent it is scaled so that its longest edge is at most 1024 pixels.

Google is the only service that can receive an image. No image is sent to Anthropic, OpenAI, DeepL, Groq, or to an endpoint whose address you supplied yourself; those receive text only. If the service you selected cannot be shown a picture and Windows cannot read the language you asked for, the app stops and tells you so, rather than sending the picture somewhere else.

How to keep images on your device

If the app is taking text directly from the window, no image is transmitted in the first place. What follows applies when it is reading by screen capture.

In the app, set the language to read to a specific language rather than “detect automatically”, and make sure Windows has the recognizer for that language installed. Reading then happens entirely on your computer and no image is transmitted.

If the source language is left on “detect automatically”, the app may select a specific language on its own based on the characters it reads on screen. From that point, captures are processed on your device and images are no longer sent externally. You are notified when this happens, and you can switch back to “detect automatically” at any time.

The recognized text is still sent to your chosen translation service, as described in the next section. Choosing a language changes whether the picture is sent; it does not make the app translate without a service.

5. Transmission to third parties

The app translates by calling one outside service. You choose which, and you supply your own account credentials for it. Only the selected service is contacted.

The services the app can be pointed at are: Anthropic, OpenAI, Google, DeepL, Groq, and one further option for an OpenAI-compatible service whose address you type in yourself — in that case the data is sent to whatever address you entered, which may be a server operated by you or by a third party of your choosing.

What is sent

What is sent only when you ask for it

BABA SOFTWARE is not a recipient of any of this. The app has no server of ours to send it to.

What each service does with what it receives is governed by that service's own privacy policy and terms, not by this one. For the services with a fixed address, the app links to their policies in its settings screen so you can read them before choosing. For the option where you supply the address, no policy can be linked, because the address is yours.

6. Clipboard

This app uses the clipboard for two purposes only.

  1. Retrieving what you typed — When you type a message in a chat input box and press the send key, the app issues a copy command to retrieve that text. This text is sent to the translation service you selected.
  2. Inserting the translation — The translated text is placed on the clipboard and pasted into the input box.

Any existing clipboard content is preserved before the operation and restored afterward. In two cases the translated text remains on the clipboard: when you use the app's own input box, and when no target window could be found and the app asks you to paste manually.

This app does not monitor the clipboard on a schedule. The clipboard is read only at the moment these operations run. Content you previously copied is read solely to restore it, and is never transmitted or written to disk.

7. Keyboard

Stated first, plainly: the app installs a global low-level keyboard hook. This is a Windows facility that lets a program see key presses before the program you are typing into receives them, and it is how the app is able to translate what you typed at the moment you press Enter, instead of making you copy it elsewhere.

What that hook does here is narrow, and all of it is limited to the following:

Why this is not a keylogger

A keylogger records the characters you type and reports them somewhere. This app does neither. It does not read the characters of your typing at all: no key other than Enter is examined, no keystroke is stored, and no keystroke is transmitted.

The text that gets translated does not come from the hook. It is copied out of your chat program's input box after Enter is pressed, by the clipboard method described in section 6 — a message you had finished writing and were about to send, not a record of your typing.

8. Storage of your API key

The key you enter is stored in the app's settings file, a single file named settings.json kept in the per-user application data folder. Its exact location depends on how the app was installed — an ordinary installation and a Microsoft Store package do not put it in the same place — but in either case it is a location belonging to the Windows user account you are signed in as.

Inside that file the key is encrypted with the Windows Data Protection API (DPAPI) under the current user scope, with an additional application-specific entropy value.

The practical effect is that the stored key can be decrypted only by your Windows account on that computer. Copied to another account or another machine, it cannot be read; the app treats it as if no key were set.

On Android, the key is stored in settings.json in the app's private storage, encrypted (AES-GCM) with a key created inside the device's Android Keystore. That key never leaves the Keystore, so copying the file to another device does not open your API key. The app has Android backup turned off, so its settings are not uploaded to Google Drive or any other backup. Uninstalling the app or clearing its data removes the key as well.

Your key is sent only to the service it belongs to, as that request's authentication header. It is not sent to us, and it is not sent to any other service.

9. Translation memory

While the app runs it keeps the translations it has already obtained, so that scrolling a conversation back and forth does not pay for the same message twice.

10. What is stored on your device

The Windows version writes one file: settings.json, in the per-user application data folder described in section 8. It contains your settings and nothing else. The Android version is described separately under “Android” below.

What this file does not contain: no message text, no translations, no screen captures, and no history of any of them. The Windows version writes no other file — no log file, no cache, no temporary copy of anything it read.

Android

The Android version keeps two settings files in the app's private storage. Other apps cannot read that storage, and it is removed when you uninstall the app.

Neither file contains message text, translations or screen captures. There is no log file and no cache.

Diagnostics file (only when you ask for it). If you press “Save what the next pass sees” in settings while the app is reading by screen capture, a capture of the next screen the app reads (reading.png) and the text it read from that screen (reading.txt) are saved in the app's external files folder (Android/data/com.baba.chattranslator/files). It exists to look into problems and is never created unless you press it. Text read through the accessibility service is never written to a file, even if you press it. These files contain your conversation as it appeared. The app never sends them anywhere, and pressing the button again overwrites them. They are removed when you uninstall the app, and you can delete them yourself at any time with a file manager. The settings screen says the same thing.

11. Analytics, crash reporting, and other network activity

There is none. Specifically:

Checking whether you have bought the app

This app is paid, so on startup it asks the store it was installed from whether you own the full version. The Windows version asks the Microsoft Store; the Android version asks Google Play.

The app neither receives nor asks for your account details. The store answers only "owned" or "not owned"; your name, email address and account identifier are never passed to the app. This is why the app has no sign-in of its own — the store app on your device is already signed in and does the identifying, and this app only receives the answer.

Your purchase is recorded by the store against your account, not by this app. That is why reinstalling the app, or moving to a new device, carries your purchase with it.

Checking the trial period (Android version)

The Android version offers a seven-day free trial. Recording when the trial began on the device itself would mean that reinstalling the app resets it, so the app keeps that timestamp on a server operated by this app's developer (Google Firebase Realtime Database, Singapore).

Two things are stored there, and nothing else:

What the app does not do with that identifier:

Once the full version has been bought there is no reason to check a trial period, and the app stops contacting this server. The Windows version does not use this server at all, because the Microsoft Store manages its trial period directly.

Separately from network activity, the app can open your default web browser: at a service's key page when you press Get API key, and at the linked pages in the settings screen when you click them. Those are pages you asked to open, and the app sends nothing with them.

12. Children

The app is a general-purpose tool and is not directed at children. We collect no personal information from anyone, of any age, because the app transmits nothing to us. If you are a parent or guardian and have a question about this, please write to us at the address below.

13. Requesting deletion of your data

The only thing BABA Real-Time Chat Translator (developer: BABA SOFTWARE) keeps on a server is the single trial-ledger row described in section 11. Conversations, captured images, translations and API keys never reach a server of ours, so there is nothing of that kind to delete.

What is deleted

That row is all of it. Delete it and nothing of yours remains.

How long it is kept

The row is kept until you ask for it to be deleted. It exists so the trial is offered once, so it carries no expiry of its own. Uninstalling the app does not remove it — to have it removed, use the steps below.

How to ask

  1. Email baba_software@hotmail.com with the subject "Data deletion request".
  2. Include the first eight characters of the device key. It is shown near the bottom of the app's settings screen as This device's key: xxxxxxxx.
  3. We delete the row and reply within 30 days.

Why we have to ask you for that key. The stored value is a hash computed only on your device, and we have no way to find it from an email address or a name. That is deliberate — it also means we cannot identify you. If you cannot produce the key, write to the same address and we will work it out with you.

14. Changes to this policy

If the app's behaviour changes in a way that affects anything stated here, this page is updated and the effective date at the top is changed with it. The version published here is always the one that describes the current release.

15. Contact

Questions about this policy, or about what the app does, can be sent to baba_software@hotmail.com.