Your videos stay on your PC
AutoScript Sync does local AI video processing: the analysis runs on your own Windows PC, and the app never sends a video, a frame, a thumbnail or a file name to any internet server. The one file it uploads is the generated funscript, and only to Autoblow's cloud when you use an Autoblow AI Ultra. The app does still go online for other things, listed in full below.
Checked against the app's code on 21 September 2026. This page describes the app's behaviour; it is not a privacy policy.
What never leaves your PC
Pose estimation, depth estimation, optical flow and motion-type classification all run on your PC, on the graphics card or the processor. No code path in the app sends any of these to an internet server:
- the video file, or any frame from it
- thumbnails, including the ones AI Bulk Learn keeps for review
- the video's file name or folder
- your labels, learned AI files and generation reports
The app has no analytics, no usage tracking, no telemetry upload and no automatic crash reporting. Errors and diagnostics are written to files on your PC. It also has no AI chat or online help: the Help panel is built-in text, and the Guides and Discord items in the Help menu open a web page in your browser only when you click them.
There is one local-network exception, the VR headset feature, described below. Nothing in it goes to the internet.
The one upload: scripts sent to an Autoblow AI Ultra
The Autoblow AI Ultra plays scripts from Autoblow's cloud, not from your PC, so the script has to go there. When an Ultra is connected, the app uploads the device-shaped funscript as a file named funscript.json:
- when you press Send Script to Device
- automatically after each generation, because Auto-send script to device after generation is on by default
- when Generate + Play starts, and when a playlist moves on to the next video
The uploaded file holds timestamps and positions. Its metadata is trimmed to generator, creator, format, version, range, stroke_expansion and id; the analysis details the app records in its own copy are removed, and no video data or video file name is included. The code notes Autoblow's documentation that uploaded scripts are kept for about 48 hours. If the same script is sent again within 46 hours in the same app session, the app reuses the copy already there instead of uploading it again.
If you do not use an Autoblow, nothing is uploaded at all. Unticking the auto-send setting stops the upload after each generation; Generate + Play and playlists still send the script, because the Ultra cannot play without it.
Every connection the app makes
The app's outbound traffic was traced through every file in its source. These are all of the connections, including the installer's. None of the internet connections carries video; the only one that does is the VR headset server, which stays on your local network.
| Connection | When | What is sent | Can you switch it off? |
|---|---|---|---|
| Licence activation, autoscriptsync.com | Once, when you click Activate | Licence key and a hashed machine ID | Needed once to activate |
| Licence re-check, autoscriptsync.com | At launch, once 14 days have passed since the last successful check; every launch until one succeeds | Licence key and hashed machine ID | No. Offline, the licence keeps working |
| Trial check, autoscriptsync.com | From the moment you click Start free trial, at each launch and each time you open Help → License / Activation…, for as long as no licence is active (this continues after the trial ends) | Hashed machine ID | It starts only when you click Start free trial; it stops once a licence is active |
| Deactivate this PC, autoscriptsync.com | Only when you click it | Licence key and hashed machine ID | Only runs on your click |
| Update check, autoscriptsync.com | About 1.5 seconds after every launch | Your saved purchase code, if you entered one; no app version, machine ID or file data | No |
| Intiface engine check, api.github.com | Every launch, when an engine is present | A request for the latest engine release tag | No |
| Model downloads, GitHub release hosts | At launch, when the recommended pose or depth model is missing | Download requests | Yes: Download recommended models automatically, in Settings |
| Model size check, GitHub | Every launch where the recommended model is installed | A headers-only request | No; it runs whatever the download setting says |
| Intiface engine download, GitHub | First Intiface connection, only if no engine is bundled or installed | Download request | Release builds bundle the engine, so this normally never runs |
| Autoblow cloud, autoblowapi.com | Only while an Autoblow is connected | Device token, commands, state polls and the funscript (above) | Yes: do not connect an Autoblow |
| Name lookup of cloudflare.com | Only if an Autoblow connection fails with a name-resolution error | One DNS lookup, to tell you whether the PC is online | Only runs on that error |
| Intiface, 127.0.0.1:12345 | While an Intiface device is connected | Device positions, on your own PC only | Local at the default address. If you change the Intiface address to another machine, commands go to that machine |
| VR headset server, port 8942 on your network | While a headset session runs | The current video, to your local network (below) | Yes: do not connect a headset |
| Installer: AI runtime, models, VLC | During installation. The runtime and model tasks are ticked by default; VLC is fetched only if it is not already installed | Download requests to GitHub and get.videolan.org | The runtime and model tasks can be unticked in the installer |
So not all network activity can be switched off: the update check, the Intiface engine check and the model size check run at every launch with no setting to stop them. The hashed machine ID is the first 32 hex characters of a SHA-256 hash of your Windows MachineGuid combined with the product name, not the raw hardware ID. After activation, the licence itself is checked offline on every launch against a public key built into the app.
Updates are never installed silently. Help → Check for Updates… asks before downloading and again before running the installer.
VR headsets: your video on your local network
To play a video in DeoVR on a Meta Quest, the app has to hand the headset the video. After you connect a device, enter the headset's IP address and press Connect Headset, the app starts a small web server on port 8942 as soon as a video is sent to the headset: at connect time if a video is loaded, otherwise when you load one. The headset is sent a web address that contains the video's file name.
The server has no password and listens on all your network interfaces, and it serves the current video whatever address is requested. While it runs, any device on the same network could fetch the video. Use it on a home network you trust. The traffic stays on your local network; nothing goes to the internet.
The server stops when you press Disconnect Headset, reconnect the device, or close the app. It does not stop if the headset connection drops on its own, so press Disconnect Headset when you are done.
We have tested the DeoVR headset path against a simulated headset, not a real one.
Third-party libraries inside the app
The app's own code sends nothing beyond the list above. Two libraries it bundles have their own behaviour, which the app does not switch off. What follows comes from the copies of those libraries in a local build; a shipped installer could differ.
ONNX Runtime
ONNX Runtime runs the AI models. Its own privacy notice says its official Windows builds have platform telemetry (Windows event tracing) switched on by default, and the app does not call the function that turns it off. This is operating-system event tracing: whether anything reaches Microsoft depends on your Windows diagnostic-data settings. The app itself sends nothing through it.
Ultralytics
The Ultralytics library is loaded only when a .pt pose model is in use, which is what the Ultralytics download mirror serves. ONNX pose models never load it. When it loads, it looks up one.one.one.one and dns.google as an online check. It also has a usage-events feature, on by default, that can post an event to Google Analytics. That can happen only if the app's fast inference path fails and it falls back to the library's own prediction function; normally that path is not used. Such an event would contain the task, the model name (recorded as custom for the app's local files), the device type, Python and library versions, the CPU type, a random session ID and a hashed ID derived from the PC's network adapter address. It contains no images and no file names. The app does not set YOLO_OFFLINE or turn the feature off.
What the app stores on your PC
Everything below stays on your PC. Installing or uninstalling the app leaves the .autoscript_sync folder in place, so delete it yourself if you want it gone.
%USERPROFILE%\.autoscript_sync\config.json- Your settings. It holds your purchase code in plain text, the Autoblow device token encrypted (its key is
token.keyin the same folder), the last video's full path and playback position, and per-video sync offsets keyed by path, up to 200 of them. %USERPROFILE%\.autoscript_sync\review_queue.json- AI Bulk Learn's review queue. Each entry is a window waiting for your review: a 160-pixel-wide JPEG thumbnail of the frame, the video's file name and full path, feature numbers, the model's guess and your label. Nothing in the app uploads it. Treat it as containing images from your videos.
%USERPROFILE%\.autoscript_sync\track_review\- Track & Review runs, including JPEG frames of the span you reviewed (up to 480 px tall), capped at 5 GB in total.
- Learned AI files
ai_model.json,corpus_learner.json,anatomy_learner.jsonandroi_learner.json, in the same folder: what the app has learned from your corrections.autoscript_sync.logandlogs\- The main log and the per-generation diagnostics reports. Error lines in the log can include full file paths. Reports record the video's file name but not its folder, and no frames, device tokens or purchase codes. Help → Export Diagnostics… writes these into a local
.zip; nothing is sent unless you email it yourself. models\andruntime\- The AI models and runtime, in installed builds.
%USERPROFILE%\.autoscriptsync\(no underscore)- A separate folder for the signed licence (
license.json) and the trial cache (trial.json).
The settings folder can be moved with the AUTOSCRIPT_CONFIG_DIR environment variable, and the logs, models and runtime folders with AUTOSCRIPT_LOGS_DIR, AUTOSCRIPT_MODELS_DIR and AUTOSCRIPT_RUNTIME_DIR. When the app hits an unexpected error it keeps running and writes the error trace to the local log with values such as code=, token= and key= and purchase codes masked. That masking covers error traces, not every log line. Nothing is uploaded.
This website
- No analytics or tracking scripts. The only scripts are the site's own: the language switcher, the help chat and the image viewer.
- Google Fonts. Every page loads its fonts from
fonts.googleapis.comandfonts.gstatic.com, so your browser contacts Google when you open a page. - One cookie.
aslstores a language you pick yourself, for one year. A language detected from your browser sets no cookie. - The help chat runs in your browser. It answers from a built-in list of keyword-matched answers, uses no language model and sends nothing to any server.
- Trial downloads are logged. Each trial installer download adds a line to a log on the server with the time and the connecting IP address. The public download counter keeps only salted IP hashes, for a one-hour window that stops repeat downloads being counted twice.
- Orders. Payment happens on Revolut's or PayPal's own pages. The store's order form keeps the name you give (optional), your email, the payment method, quantity and total, so the licence key can be emailed to you. Repeated order attempts are rate-limited using a file named after a hash of your IP address. After a purchase you get one email asking for a review and at most one reminder; they stop when you review or opt out.
- Reviews can only be submitted with an issued licence key, and only a hash of that key is stored.
What is not documented
Some things cannot be stated from the app's code or this site's code, so this page does not state them:
- How long server-side records are kept: the licence database (licence keys with buyer email, machine IDs per seat, trial records) and the trial download log with IP addresses. The site's code sets no retention period for either.
- What the web host's own access logs record, or how long it keeps them. The update check's address includes your purchase code when you have saved one.
- How Autoblow processes or keeps device tokens, commands and scripts, beyond the roughly 48-hour script lifetime noted above.
- Exactly what the bundled third-party libraries do in every shipped build.
This site has no privacy policy or cookie page at the moment. This page is a technical description of how the app and site behave, not a substitute for one.
Questions
Can I use the app completely offline?
Analysis works offline, and an activated licence is checked offline against a key built into the app. You need internet to activate or start the trial, to download models, and to use an Autoblow AI Ultra. When the PC is online, the app makes the launch-time checks listed above, and those cannot be switched off.
Does anyone see which videos I process?
Not through the app. Video files, frames, thumbnails and file names are not sent to any internet server. The one route by which a video leaves the PC is the VR headset server, which serves it on your local network while a headset session runs.
What does the licence server learn about my PC?
A hashed machine ID: part of a SHA-256 hash of your Windows MachineGuid and the product name. It is used to bind a licence or a trial to that PC. The licence database stores licence keys with the buyer's email and plan, machine IDs per seat with the time they were bound, and trial records; it has no column for IP addresses.
Is it safe to send my review_queue.json to support?
Only if you are comfortable sharing what is in it: small frame thumbnails and the full paths of your videos. Generation reports (gen_*.json) and .funscript files contain no images; a report does include the video's file name. Sending any of them is always your choice, by email.
Read next
- Autoblow AI Ultra setupHow the cloud sync works and why the script has to be uploaded.
- Intiface devicesDevices driven over a local connection, with nothing uploaded.
- Report StudioRead a generation report in your browser, without uploading it.
- Running it on WindowsInstall, requirements, updates and where the app keeps its data.
Try it on your own videos
The free trial is the full app for one day. Starting it needs internet once; your videos are analysed on your PC either way.