In plain English
Five steps: inventory every signed contract into one place, rename each file with a consistent convention, record the key terms in a metadata spreadsheet, file everything in a simple folder tree, and make the text searchable with OCR. The spreadsheet does most of the work, because it answers questions that filenames and full-text search cannot.
Educational only. Not legal advice.
By version90 staff Published How this was made
Download: the contract metadata spreadsheet template (.xlsx), also available as .csv. Free, no email required. To use it in Google Sheets, open a blank sheet and choose File, then Import, then Upload.
Why are most contract folders unsearchable?
Because contracts arrive through five different doors and nobody owns the hallway. At a typical startup or small business, signed agreements live in:
- Email, as attachments in the founder's, the AE's, and the ops lead's inboxes
- The e-signature tool, where completed envelopes sit until someone downloads them
- A shared drive, in a folder called "Legal" or "Contracts (old)" that three people have reorganized three different ways
- Slack, where "here's the countersigned copy" was the final step of a deal
- The CRM, attached to a closed-won opportunity that nobody will open again
Even when the files are in one place, they are hard to search for three reasons. The names are inconsistent (MSA_final_v3_SIGNED.pdf, Acme agreement.pdf, DocuSign_Completed_48213.pdf). There is no metadata, so "which contracts renew next quarter?" means opening every PDF. And many of the files are scanned images with no text layer, so even full-text search finds nothing.
The fix is not a better folder. It is a small system: one place, one naming rule, one metadata sheet, and text you can actually search.
Step 1: How do you inventory every contract you have?
Start by pulling everything into a single staging folder. Do not organize yet; just collect. Work through each source in turn:
- E-signature tools. DocuSign, Dropbox Sign, PandaDoc, and similar tools all let you filter completed envelopes and bulk-download them. This is usually the richest source, so start here.
- Email. Search each key inbox for attachments with terms like "signed", "executed", "countersigned", "agreement", "MSA", "order form", and "SOW". Gmail's
has:attachment filename:pdffilters help. Include the founders, finance, and anyone who ran sales early on. - Shared drives. Search for PDF and Word files with the same terms, and check the folders of people who have left the company.
- The CRM. Export attachments from closed-won opportunities, or at least list the deals so you can check nothing is missing.
- Slack. Search for "signed" and "countersigned" in deal channels and DMs with finance.
- Vendors. For the contracts where you are the customer (software, office lease, payroll, insurance), log into each vendor portal. Many of those agreements were clickthroughs, so save the terms version you accepted and the order confirmation.
Keep only final, signed copies in the archive. Drafts and redlines belong with the negotiation history, not in the record of what you agreed. If you only have an unsigned copy, keep it but mark it as unsigned in the metadata sheet; that gap is worth knowing about.
Expect duplicates. The same MSA will turn up as an email attachment, an e-signature download, and a drive copy. Keep the e-signature version when you have it, because it usually includes the signing certificate.
Step 2: What naming convention should you use for contracts?
Use one format for every file, with the date first:
YYYY-MM-DD_Counterparty_DocType_v#.pdf
For example:
2025-03-14_Acme-Corp_MSA_v1.pdf2025-03-14_Acme-Corp_OrderForm_v1.pdf2026-03-14_Acme-Corp_OrderForm_v2.pdf(the renewal)2025-06-02_Northwind_SOW-Implementation_v1.pdf
Why this format works:
- Date first sorts correctly. ISO dates (
2025-03-14) sort in true chronological order in every file browser.March 2025or3-14-25does not. - Use the effective date, not the date you filed it. It is the date that matters for renewals and precedence.
- Counterparty second makes it easy to see everything from one company at a glance, even in a flat list.
- Doc type from a short fixed list: MSA, OrderForm, SOW, NDA, DPA, Amendment, SubscriptionAgreement, Lease, Other. A fixed list is what makes filtering possible later.
- Hyphens inside fields, underscores between them. That keeps each part easy to split in a spreadsheet if you ever need to.
- A version number for amendments and renewals, so the latest one is obvious.
Write the rule down in one sentence and pin it wherever people save contracts. A naming convention only works if the next person to save a file knows it exists.
Step 3: What metadata should you capture for each contract?
This is the step that makes the archive useful. Filenames tell you which document it is; metadata tells you what it says. Create one row per contract with these columns (they are all in the free template):
| Field | Example | Why it matters |
|---|---|---|
| Counterparty | Acme Corp | Group every agreement with one company |
| Document type | Order form | Filter by type; see the MSA, SOW, and order form guide for what each one does |
| Parent agreement | 2025-03-14_Acme-Corp_MSA_v1 | Know which MSA an order form or SOW sits under |
| Effective date | 2025-03-14 | Start of obligations |
| End date | 2026-03-13 | When the current term expires |
| Renewal type | Auto | Auto-renewals are the ones that surprise you |
| Notice period (days) | 60 | Sets the real deadline to cancel or renegotiate |
| Notice deadline | 2026-01-12 | End date minus notice period; the template calculates it |
| Contract value | $48,000 / year | Prioritize reviews and renewals by money |
| Liability cap | 12 months of fees | Know your exposure without rereading the PDF |
| Governing law | Delaware | Useful in a dispute and in due diligence |
| Owner | Jordan (Ops) | Who is responsible when it comes up for renewal |
| Status | Active | Active, expired, terminated, or superseded |
| File | link to the PDF | One click from the row to the document |
The notice deadline column is the one to watch. An auto-renewing contract with a 60-day notice period has to be cancelled two months before the end date, not on it. Sort the sheet by notice deadline, put the next few in a calendar, and you will stop discovering renewals from invoices. For how these clauses work, see auto-renewal clauses and notice windows.
Fill the sheet in one pass per document: open the PDF, read the first page, the term and termination section, the fees section, and the liability section, and type the values in. Budget three to five minutes per contract. A startup with 150 contracts can finish in a couple of working days, and it only has to be done once.
Step 4: What folder structure works best for contracts?
Organize by counterparty, then by document type:
Contracts/
├── Customers/
│ ├── Acme-Corp/
│ │ ├── MSA/
│ │ ├── OrderForms/
│ │ └── SOWs/
│ └── Northwind/
├── Vendors/
│ ├── Payroll-Provider/
│ └── Cloud-Hosting/
├── Partners/
├── Employment-and-Contractors/
└── Corporate/
Why not by year? Because the questions you actually ask are about relationships: "what have we signed with Acme?", "which MSA does this order form sit under?", "what are our terms with our hosting provider?" A year-based tree scatters one customer's MSA, order forms, and renewals across several folders. The date is already in the filename, so sorting by time within a counterparty folder is free.
A few rules keep the tree healthy:
- Keep it shallow. Three levels is enough. Deep trees make people guess, and guessing is how duplicates happen.
- Split customers from vendors at the top. They have different owners and different questions.
- Restrict edit access to the people who file contracts. Everyone else can view. That stops well-meaning reorganizations.
- Never delete superseded contracts. Mark them superseded in the metadata sheet; old terms still matter in disputes.
Step 5: How do you make contracts full-text searchable?
With good names, metadata, and folders, you can find any contract by who, what, and when. Full-text search covers the rest: finding a phrase inside the documents.
Check for a text layer first. Open a PDF and try to select a sentence. If you cannot, it is a scanned image and search will never find anything in it. Scans are common for older contracts and anything signed on paper.
Run OCR on scanned PDFs. Optical character recognition adds a hidden text layer so the words become searchable. Adobe Acrobat's "Scan & OCR" tool does this, as do many free and built-in tools, and Google Drive will extract text from scanned PDFs when you open them with Google Docs. OCR the whole archive once; it is a batch job.
Know what your drive's search can do. Google Drive and similar tools search inside the text of PDFs and Word files, which is useful for finding a specific name or phrase. But there are limits:
- Results are ranked for documents, not clauses. Searching "limitation of liability" returns nearly every contract you have.
- Very large files may only be partially indexed.
- Search cannot compare values. It can find "Net 60" but not "every contract with payment terms longer than Net 30".
- It cannot answer date questions like "what renews in the next 90 days?"
That is where the architecture of this system matters. Use the metadata sheet for questions about values and dates, and full-text search for finding specific wording. Most of the questions you will actually get from finance, sales, or a buyer doing due diligence are metadata questions.
When does the spreadsheet stop working?
A folder and a spreadsheet will carry a startup a long way. These are the signs you have outgrown it:
- More than about 100 active contracts. Keeping a hand-maintained sheet accurate becomes a job nobody has.
- More than one person regularly asks "where is the X contract?" The archive exists, but it is not self-serve.
- You have missed a renewal or a notice deadline. The sheet had the date; nobody was looking at it.
- The sheet and the folder disagree. New contracts get filed without a row, or rows point at files that moved.
- You need clause-level answers. "Which customers have a liability cap below twelve months of fees?" means rereading contracts, because the sheet only holds what someone typed.
- A fundraise or acquisition is coming. Due diligence asks for exactly this data, in a hurry.
At that point, look at a dedicated contract repository: a tool that stores the documents, extracts the key terms automatically, keeps new contracts filing themselves, and alerts you before notice deadlines. Keep the naming rules and metadata fields from this guide either way; they are what a good repository captures too, and a clean archive makes any migration faster. For how these tools fit into the bigger picture, see what contract lifecycle management covers.
About this page
Who. Written by version90 staff at Latent Ape LLC, the company that builds version90, working with AI tools. We build contract software and run our own contracts through it; we are not a law firm, and nothing here is legal advice.
How. Each piece starts from the review workflow version90 is built around. AI drafts and structures the text; staff edit, fact-check, and rewrite it before it is published, and we update the date shown above whenever the substance changes.
Why. The library exists to give founders and ops teams a shared standard for reviewing contracts without a legal department. If you spot an error, email [email protected] and we will fix the page.