Nobody looks at a jobsite photo until eighteen months later, when an owner claims the block-outs were never formed and the only proof is somewhere in a superintendent’s camera roll from a Tuesday in March.
The short answer
A photograph has nothing written on it, which makes it the one construction document that cannot be filed by reading it. It has to be filed by the context it arrived in: who uploaded it, when, and from which job. A workflow uses the File Uploaded trigger on a per-project upload folder, the Rename step to name each photo by date and sequence, and the Move step to file it under that project and month. The work is in the routing, not the reading — give each job its own upload destination and the photos sort themselves.
Steps this uses
Before and after
As they arrive
After the workflow
Photos from two jobs on consecutive days, filed by where they were uploaded and named by when they were taken.
Setting it up
This is the sentence. Send it to the builder and the steps below appear on a canvas, wired and named, for you to change before anything runs.
When photos are uploaded to a job folder, rename each one by the date it was taken and a sequence number, and file it under that job by month.
This is the whole trick. A photo carries no project name, so the project has to come from where it was dropped. One folder per active job, and the person in the field uses the one for the job they are standing on.
The Rename step writes the capture date and a sequence number. Naming by subject means somebody deciding what a photo is of, and that decision does not get made reliably at four in the afternoon in the rain.
The Move step files into a month folder under the project. Progress photos are looked up by when, almost never by what, because the question is always what did this look like in March.
The On a Schedule trigger checks which active jobs have no photos this week and Send a Message reports them. A gap in the record is only cheap to fix while the job is still there.
Every other construction document says what it is somewhere on its face — a project name in a title block, a spec section, a claim number. A photo says nothing. Tools that promise to sort photos by content are guessing from pixels, and a guess about which of your four jobs a concrete pour belongs to is worse than no guess, because it files confidently and wrongly. Routing by upload destination is less clever and it is right.
A phone records when a photo was taken. The upload happens whenever there is signal, which might be three days later in the truck. Naming by capture date rather than upload date is what makes the folder a timeline of the job rather than a timeline of connectivity — and eighteen months later, the capture date is the entire point.
It does not tag photos by what is in them, identify a trade, or find the picture of the block-out for you. It puts every photo in a place determined by job and date, which turns an unsearchable camera roll into something a person can narrow to one week and look through. That is the realistic win; anything more would be a guess dressed up as a feature.
FAQ
By project, then by month, with each photo named by its capture date and a sequence number. Photos carry no readable information about which job they belong to, so the project has to come from where they were uploaded — one upload folder per active job is what makes the whole thing work.
Not reliably, and it is worth being careful here. Identifying a trade or a location from pixels is a guess, and a confident wrong guess files a photo somewhere nobody will look for it. Filing by job and date is less clever and it is correct, which matters more when the photo is being looked for as evidence.
By date. Naming by subject requires somebody in the field to decide what each photo is of, and that decision does not get made consistently. Capture date plus a sequence number takes no decision at all, and the date is what people search by when they go looking.
They can be routed into the same per-job upload folder, at which point they are treated like any other photo. The one thing that cannot be recovered is which job a photo belongs to when it arrives with no context at all — that is why the upload destination carries the project rather than the file.
One upload folder per job, and the photos sort themselves by date.
5 GB free · No credit card required