CRM migration free files: what counts toward 5,000 records

Files never make a CRM migration paid. Pipedrive and Affinity files are counted after the free sample and count toward the 5,000-record free limit.

Last updated: 7 Nov 2026

Files no longer make a CRM migration paid. Shuttio counts Pipedrive and Affinity files after the free sample finishes, and they count toward the free limit of fewer than 5,000 records. Files from every other source move free and do not count. You see the price or the free line on the "Run full migration" screen.

What changed

A CRM migration is free when it moves fewer than 5,000 records in total. The records counted are contacts, companies, deals, notes, activities and files together. Tick lists, tickets, products or custom objects, or reach 5,000 records, and the record-count price applies.

Before this change, files from a source that could not be counted up front pushed the run onto the paid plan. That reason is gone. Files now follow three rules:

  • Pipedrive and Affinity: Shuttio counts the files once the sample plan has finished. The count covers the whole source, not the sample. Nothing is extrapolated from the sample.
  • Every other source: files move free and add 0 to the total. These sources list files per record or per engagement, so a count would need one call per record.
  • Count not ready: if the file count is missing, failed or still running when you press "Run full migration", the files move free and add 0. The run never waits on files alone.

The count reads file metadata only. It downloads no file. It lists about 100 files per page and stops as soon as it reaches 5,000 files, because past that point the run is over the limit whatever the exact number. If it needs more than 150 pages, it gives up and the files are not counted.

How to use it

  1. Pick from and to, connect both CRMs, and choose your objects. Tick files with the rest where the pair supports them. Into Odoo, files move only when Odoo is connected with an API key.
  2. Review the fields.
  3. Start the free sample. Shuttio copies 5% of your companies, contacts or deals (10 to 1,000 records), and keeps the companies and contacts linked to the sampled deals.
  4. When the sample finishes, Shuttio sends the file count in the background for Pipedrive and Affinity. You do not start it.
  5. Open the result screen. While the record count is running, the button reads "Run full migration" with the note "Available when counting finishes." If that count fails, the note says "We could not count your records" and gives the reason, and a Recount is available. The file count never holds the button.
  6. When the total is under 5,000, the note reads "Free: under 5,000 records" with the counted number in brackets. At 5,000 or more, the screen shows the price instead. The price is shown before the full run starts.
  7. Press "Run full migration".

If you press the button before the file count ends, the files are ignored for the free check and move free. That is by design. If you want your files included in the total, wait for the count first.

What it does not cover

  • Other sources' files are never counted. A HubSpot or Attio migration moves its files free, even if they would take you past 5,000 on their own.
  • Link-only files are not counted. A Pipedrive file that is only a link moves no bytes, so the count skips it.
  • Long file lists are not counted. After 150 pages the count stops and records that the file listing was too long. The files then move free and do not count.
  • Files do not cancel other paid objects. Lists, tickets, products and custom objects still need the paid plan. "Run free without" drops those objects, never files.
  • The 5,000 limit has not moved. Files add to the total only where the count is in. A migration with 4,800 contacts, companies and deals plus 300 counted Pipedrive files totals 5,100 and is not free.
  • Affinity to Odoo is still not supported.

FAQ

Do files make my Clarify or Odoo migration paid? No. At worst they move free and add nothing to the total. They add to the total only when the source is Pipedrive or Affinity and the count finished before you pressed "Run full migration".

Why does Shuttio count files after the sample and not before? The count runs after the sample so it does not compete with the sample for the source's rate limit.

Is the file count a prediction from my sample? No. It counts the files of the whole source. It never multiplies the sample.

Questions about your own migration: write to us from https://www.shuttio.com.