FAQ
Back to App
No. Your browser talks directly to Salesforce and directly to Google Drive - file bytes move between the two without ever passing through any server we run. Our server is involved in exactly one place, the one-time OAuth sign-in handshake for each provider, and never sees a file, a query result, or your license usage.
No package install. There are two one-time, org-wide admin settings: adding MigrateStream's origin to the CORS allowlist, and installing the Connected App. Both are documented click-by-click, including what the error looks like if either is skipped.
Yes. Pick a destination folder in My Drive or in a Shared Drive using Google's own folder picker - both work the same way.
Yes. Folder Mapping creates one subfolder per linked record - named by whichever field you choose, such as Account Name or Case Number - instead of putting every file in one place. If your selection spans more than one object, each object gets its own mapping.
Just re-run it. Already-migrated files are detected and skipped automatically, matched by the file's own identity rather than its name, so an interrupted run resumes instead of redoing work that already finished.
A signed license key, scoped to your Salesforce org(s) and Google account(s) and sized to your migration volume - not a subscription or a per-seat account. A free evaluation license is available. There is no account of yours on our servers and nothing about your usage is stored there.
Yes, for interactive, browser-driven migrations - object-by-object scoping with live counts, SOQL filtering to narrow exactly what moves, and safe resume if a run gets interrupted. It is a browser-based tool you run and watch, not an unattended batch pipeline, so we frame this honestly rather than claim unlimited scale.
No. MigrateStream only reads your Salesforce Files - it queries which ones match your scope and filters, then downloads their content. It never edits, deletes, or archives a file or record in Salesforce. Your original files stay exactly where they are.
A current version of Chrome, Edge, or Firefox, with JavaScript enabled. Since file transfer happens directly between Salesforce and Google Drive through browser APIs, an up-to-date browser matters more than it would for a typical form-driven web page.
This is a Firefox privacy setting, not a MigrateStream problem. Firefox's Enhanced Tracking Protection can prevent Google's folder picker from verifying your session, showing a misleading error such as "The API developer key is invalid". Click the shield icon in your address bar, turn off Enhanced Tracking Protection for this site, and try again.
Yes. Your Salesforce and Google connections live only in that browser tab's memory, by design, since MigrateStream keeps no server-side session of any kind. Refreshing the page, closing the tab, or coming back later all require reconnecting both. Avoid refreshing while a migration is running, since it will stop the run.
There's no fixed number - it depends on how many files you're migrating, their total size, and your network speed. Before you start, the summary screen shows a time estimate based on your specific selection, and the run itself shows live progress so you always know where it stands.
Any Salesforce File (ContentVersion) - PDFs, images, Office documents, and every other file type Salesforce itself allows. MigrateStream moves the file content exactly as stored in Salesforce; it doesn't convert or re-encode anything.
Not today. MigrateStream currently migrates Salesforce Files (ContentVersion) only. The legacy Attachment object and Classic Notes are a future scope item, not yet available.
Licenses issued before August 2026 measure usage across everything MigrateStream has ever moved into that Google account, under any key and by anyone, because nothing we write records which licence moved a file. Licenses issued since then count only their own migrations, so a new one starts at zero however much is already in the account. If you are on an older key and the figure includes migrations that were not yours, contact Satrang Technologies and we will reissue it so it counts only its own work.
The preparation step works through your records rather than your data, so the wait tracks how many files you selected and how many Salesforce objects you mapped, not how many megabytes they add up to. Ten thousand small files take about as long to prepare as ten thousand large ones. The migration itself is the part that depends on size.
Files are matched by the file itself rather than by any name, so files already migrated are still recognised and skipped even if the record, the file, or the folder has since been renamed. A renamed record means new files go to a folder named after the new value, and the folder created under the old name stays where it is with its files intact.
While preparing a migration, MigrateStream searches everything you have previously migrated into your Google account to find files already at your destination, so that count is your account's migration history rather than your current selection. On an account with a long history it can run into the thousands even when your destination folder is empty.
It almost always means your org has not yet added MigrateStream's address to its CORS allowlist, which is a one-time setting under Setup > CORS. Add it, wait a couple of minutes, and sign in again. MigrateStream cannot know the reason for certain, because browsers deliberately do not reveal why they blocked a request, so it tells you when it has reason to think the cause is something else.
MigrateStream checks your allowance as soon as you have chosen files, so you find out at the file selection step rather than several steps later. If your selection is larger than what remains, it tells you to choose fewer files and you can run a smaller batch right away. If your licence has no room left at all, nothing can be selected and it points you to contact Satrang Technologies. The summary screen checks again before you start, so a selection that fits is confirmed there too. Usage is measured from your own Google Drive and browser, never from anything on our servers.
MigrateStream only ever requests Google's drive.file scope, which limits it to files and folders it creates or that you explicitly pick via Google's own folder picker - never your whole Drive. There's no feature that needs broader access, so it isn't requested.
Yes. MigrateStream works the same way against a Salesforce sandbox as it does production, with the same one-time org setup (CORS allowlist and Connected App) done separately for each, since neither setting is shared across orgs. A free evaluation license is available for exactly this kind of trial run.