1.Who is responsible and how to contact us
Key Changer is published and operated by Mikhail Eshchenko (“the developer”).
For privacy questions or requests, contact support@keychanger.app.
2.What Key Changer reads and processes
Key Changer processes only the information needed to find audio in the current Chrome tab, change its pitch, remember your settings, and keep video synchronized with processed audio.
Tab audio
Key Changer processes audio playing in the current Chrome tab.
For compatible media players, audio is processed directly on the web page.
For players that require Chrome tab capture, audio is processed in an extension offscreen document after you click “Start on this tab.”
In both cases, audio is processed in memory on your device.
Key Changer does not:
- record tab audio;
- save tab audio;
- upload tab audio;
- send tab audio to the developer;
- send tab audio to a third-party audio-processing service.
Song information
To recognise a song and restore its saved pitch setting, Key Changer may read information available on the current page and create a song identifier.
Depending on the website, that identifier can be:
- a YouTube video ID;
- the website domain together with artist and title information provided by the page;
- the page address using its origin and path.
This information is used to identify the same song when it is played again.
Media response headers
In some cases, Key Changer sends an HTTP HEAD request to the address of a media file already used by the current page.
The request is used only to inspect the media response headers and choose the appropriate audio-processing method.
The request goes to the website or media host that is already serving the media. It does not go to the developer.
As with other requests made to that website or media host, it may receive standard network information according to its own systems and privacy practices.
Chrome permissions
Key Changer requests Chrome permissions required to find media players, process audio, remember settings, and support tab capture.
storageUsed to save local pitch settings, extension preferences, and temporary session state.
scriptingUsed to run Key Changer’s page-side processing code on websites where the extension is used.
tabCaptureUsed to capture audio from the current tab when the website’s media player cannot be processed directly on the page.
Tab capture begins only after you explicitly start processing for that tab.
offscreenUsed to process captured tab audio in an extension offscreen document when tab capture is required.
activeTabUsed to interact with the current tab when you activate Key Changer.
<all_urls>Used so Key Changer can detect and process media players on websites where you choose to use the extension.
Key Changer is designed to work across many different websites rather than a fixed list of domains.
3.What Key Changer stores
Local storage
Key Changer uses chrome.storage.local to store pitch settings for songs and a small number of extension preferences.
This information stays in the local Chrome profile and is not stored using chrome.storage.sync.
Saved pitch settings
When a song has a non-zero pitch adjustment, Key Changer may store:
- a song identifier;
- the selected semitone shift;
- the selected cent adjustment.
The song identifier can be:
- a YouTube video ID;
- the website domain together with artist and title information provided by the page;
- the page address using its origin and path.
This information is used only to recognise the same song later and restore its pitch setting.
Extension settings
Key Changer also stores the following settings locally:
- whether Keep vocals natural is enabled;
- an estimated audio output delay used to synchronize video with processed audio;
- whether the introductory tip has already been shown.
Session storage
Key Changer uses chrome.storage.session for temporary state related to the current browser session and individual tabs.
This can include information needed to track whether processing is active and the current state of a tab.
This information is temporary and is not used to remember songs between browser sessions.
Key Changer does not use chrome.storage.sync.
4.Who receives data
The developer
Key Changer does not send audio, saved song identifiers, pitch settings, extension preferences, or analytics data to the developer.
Key Changer does not use analytics, advertising trackers, or user accounts.
There is no backend server for Key Changer audio processing or locally stored extension data.
Websites and media hosts
Key Changer works with third-party websites such as YouTube, YouTube Music, Spotify Web, SoundCloud, and other sites.
Those websites operate independently from Key Changer and have their own privacy practices.
When a HEAD request is needed to inspect a media response, that request goes to the website or media host already serving the media, not to the developer.
Using Key Changer does not change the privacy policy or data handling of the website that is playing the media.
Sale and sharing
The developer does not sell Key Changer user data.
The developer does not share locally stored Key Changer data with advertisers, data brokers, or analytics providers.
The extension does not send that local data to the developer in the first place.
5.Retention and deletion
A saved pitch entry remains in local Chrome storage while that song has a non-zero pitch adjustment.
When the song is returned to its original pitch, its saved pitch entry is removed.
Session data is temporary and is removed when the relevant tab or browser session ends.
Local extension data is removed when Key Changer is uninstalled.
6.Files on your device
Key Changer does not read, upload, modify, or store files from your device.
Audio processing uses media playing in the current Chrome tab and does not create or save audio files.
7.Privacy requests and questions
For questions or requests about this notice, contact support@keychanger.app.
Data stored locally by Key Changer is not sent to the developer, so the developer cannot retrieve that local data on your behalf.
If Key Changer’s data handling changes, this notice will be updated and the effective date at the top of the page will change.







