Why 'Build a System, Not a Product' Is the Only Advice That Scales
Description and use
Automating CSV metadata creation, preventing duplicate uploads, and packaging files into professional bundles reduced manual effort and improved listing quality on stock platforms.
Problem
Manual CSV metadata creation and duplicate uploads caused frequent rejections and wasted hours when submitting assets to stock platforms.
Outcome
Automation reduced manual hours from two hours per batch to seconds, eliminated header typos, prevented duplicate submissions, and produced professional‑looking product packages that improved listing quality.
Workflow
- 1. Organize assets in project/assets/
- 2. Run make_metadata.py to generate platform‑specific CSVs
- 3. Use upload_tracker.py to track posted items and avoid duplicates
- 4. Run pack_product.py to bundle files, render cover and thumbnail, and create PDFs
- 5. Submit the generated ZIPs to stock platforms
Evidence
I built the CSV by hand in a spreadsheet, pasted it into the uploader, and got a rejection in under a minute. Wrong header row.
I stopped hand‑building CSVs and wrote make_metadata.py. It takes a folder of files and writes the exact header each platform demands, nothing more.
upload_tracker.py is a tiny ledger that remembers what I have already posted. Before any batch run I check pending to see what is actually left.
pack_product.py bundles the files, renders the cover and thumbnail, and drops everything into a _system folder.
The whole pipeline runs on 1 vCPU and 2 GB RAM. No GPU.
- Record date: 2026-10-17T17:56:13.458Z