Bringing a large contract repository into Aline — thousands or tens of thousands of documents — works best as a deliberate process: upload in manageable batches, then clean up duplicates and stale records so your reports start from accurate data.
This guide covers uploading at scale and getting the repository tidy afterward.
Overview
In this article you'll:
Choose how to get documents in — direct upload, repository sync, or the Data Migration Tool
Upload very large sets in batches
Reduce the source set before you ingest it
Identify and remove duplicates using a report
Clean up status and labels before running large AI jobs
Step 1: Get Documents In
You have a few ways to bring documents in, depending on where they live:
Direct upload — add files under Documents > All, choosing Upload drafts or Upload signed. You can upload individual files or entire folders, via drag-and-drop or file selection.
Repository sync — connect an existing Box, Dropbox, Google Drive, OneDrive, or SharePoint account to live-sync documents in (see Connect Your Existing Document Repository in Aline).
Data Migration Tool — bulk-import document metadata and AI property values from another system (see Bulk Importing AI Property Data with the Data Migration Tool).
💡 If a sync doesn't pull everything as expected, you can always fall back to manual drag-and-drop upload for the missing files.
Step 2: Upload in Batches
For very large sets, upload in batches rather than all at once. Staging the migration — for example, by contract type or by folder — keeps things manageable, makes it easier to spot problems early, and lets you start labeling and reviewing one group while the next uploads.
Step 3: Reduce the Set Before You Ingest
If you're pulling from a large source system, you often don't need every file. Filter the source down first — for example, using keywords and AI to target the document types you actually care about (like MSAs) — so you bring in the relevant subset instead of tens of thousands of unrelated files.
Step 4: Identify and Remove Duplicates
Large repositories almost always contain duplicates. To deduplicate:
Pull a report that includes a distinguishing field — the content version created date is a reliable one — to see which documents are copies of the same agreement
Compare versions and decide which to keep (usually the most recent or the executed copy)
Remove or archive the rest
📌 Exporting this to a spreadsheet can help when you're working through a very large set with a colleague.
Step 5: Clean Up Status and Labels
Once documents are in, use reports to finish the cleanup:
Mark expired contracts so they drop out of active views (see Managing Contract Status, Expiration & Auto-Renewal (Evergreen) Dates)
Apply labels in bulk so everything is categorized (see Organizing Documents with Labels & Bulk Labeling)
💡 Best Practice: Do the cleanup — dedup, status, labels — before you run large AI reports. Clean input means accurate output, and it keeps you from spending tokens processing duplicates and dead contracts.
💡 Best Practices
Trim at the source. The cheapest document to process is one you never imported.
Batch by contract type so labeling and review can run in parallel with the next upload.
Deduplicate before reporting, not after — duplicate rows undermine every number you pull.
Mark expired contracts early so active views are trustworthy from day one.
Keep a migration log (a spreadsheet export works) when more than one person is working the cleanup.
📚 Related Articles
Organizing Documents with Labels & Bulk Labeling
❓ Need Help?
Planning a migration of more than a few thousand documents? Click the Support button in Aline — we can help you sequence the batches and build the dedup report before you start.