File Uploads at Scale: Questions to Ask Vendors

A practical checklist for vetting file upload and document generation vendors — the questions, the numbers, and the pilot that exposes weak ones.

Maysan Engineering Team · · 5 min read

Xin

Somewhere in your product there is a file input, and behind it a queue of things that fail quietly. The finance lead who cannot re-download a signed invoice from last quarter, the ops manager whose 400-page GST export dies at 90 seconds, the CTO who finds the storage line item has tripled — those are usually the same problem in different clothes. Buying your way out is sensible. Buying badly is expensive and awkward to reverse, so the vendor conversation matters more than the vendor's feature page.

What should an upload vendor actually take off your plate?

A vendor is worth paying only if it owns four things: transfer resilience, storage lifecycle, access control, and an audit trail. Anything short of that and you are still building the hard parts yourself.

Concretely, that means resumable chunked uploads that survive a dropped 4G connection, direct-to-object-storage signed URLs so your application server never proxies gigabytes, malware scanning on arrival, preview generation for PDFs and images, expiring download links, and lifecycle rules that push old documents to cold storage without anyone remembering to. Note that file upload and document generation are two different purchases that sales teams happily bundle. Upload tooling solves transport. Document generation solves rendering. If a vendor is vague about which one they do, they probably do neither well.

Which questions actually separate vendors?

Ask about failure modes and exit costs, not features, because every demo looks identical on the features slide.

  • What is the largest single object you accept, and is multipart resumable upload included or an add-on line item?
  • Which region are the bytes stored in, and will you sign a data processing agreement that satisfies the DPDP Act's breach-notification and erasure requirements?
  • If a user's connection drops at 80% of a 2 GB upload, does it resume from 1.6 GB or start again?
  • What does this cost at 50,000 documents a month rather than 500? Ask for the line-item quote in writing.
  • How do we export every file and every metadata record if we leave — in what format, over how many days, at what price?
  • What is your p95 render time for a 40-page PDF with embedded images?
  • Who is on call, and what does your public status page show for the last twelve months?

The answers to the last two tell you more than the first five.

How do you cost a document pipeline honestly?

Price it at your month-12 volume, because most pricing tiers are designed to look generous in month one.

Say 8,000 invoices a month, two pages each, about 180 KB per PDF. Vendor A at $0.02 per render is $160 a month. Vendor B charges a $99 base for 1,000 renders and then $0.05: $99 plus $350, so $449. Fine. Now add retention — Indian tax and audit practice means years, and 8,000 documents a month at 180 KB compounds to roughly 17 GB a year, about 140 GB by year eight. Trivial on S3-class storage, but at ₹20/GB on a SaaS plan that is roughly ₹2,800 a month forever.

Then add the render itself: eight seconds inside a web request is long enough that a flaky connection or an office proxy cuts it off. Queue it. Our architecture notes cover the storage-and-queue split.

Which parts should you keep in-house?

Keep the templates and the renderer; buy transport, storage, and scanning unless you have platform engineers with spare capacity.

Templates change weekly — a GST format revision, a new logo, a customer who wants their PO number in the footer — so they belong in your repository under version control, reviewed like code. Rendering via headless Chromium in a container you control keeps that loop fast. The transport and storage layers change almost never, which is exactly the profile of something worth renting. Cloud and storage setup is usually a week of work rather than a quarter, and it removes the lock-in question entirely because the bytes live in a bucket you own.

What does a credible pilot look like?

Run two weeks against your worst documents, not the vendor's sample invoice.

Hand over a 60-page contract with tables that break across pages, a document requiring Devanagari and Tamil fonts, a 500 MB ZIP, and a file with a deliberately corrupted header. Measure p50, p95 and p99 render times, and read the error message a failed job returns, because that is what your support team will be reading at 11 pm. Then test deletion: remove a document and confirm it disappears from primary storage, backups, and any CDN cache within the window your privacy policy promises. If a vendor cannot demonstrate that in a sandbox, the DPDP erasure clause is decoration.

Where to start

List every place your product accepts or emits a file, note the monthly volume and retention requirement for each, then put the same eight questions to every vendor in the same order so the answers are comparable. That one spreadsheet will do more for your decision than a month of demos. If you would rather not build the plumbing in-house, Maysan Labs builds upload pipelines and document generation services on top of plain object storage — worth a call once your volumes cross a few thousand documents a month.

Buying software or a website?

Twelve questions to ask any vendor before you sign: price, your data, fit for an Indian business and support.

Get the free checklist

Written by Maysan Engineering Team at Maysan Labs, a software studio in Gurgaon, India. Follow us on LinkedIn