Batch Failed Midway: Resuming Without Duplicates

Re-running a failed stock upload batch creates duplicate submissions. How transfer resume differs from submission, and which tools track state.

A failed batch is not resumed by running it again. Transfer and submission behave differently: an FTP client can safely resume a half-sent file, but submitting the same file twice is not harmless. Shutterstock rejects it as Identical Submission when a copy is already in review, or as Approved on Site when the file is already published in your portfolio.

Two different operations, one button

Most upload pipelines hide two separate things behind one action. The first is moving bytes to the agency, which is a transfer and is idempotent: send the same file twice and you end up with one file, possibly after a resume. The second is submitting that file for review, which is not idempotent at all. It creates a record, and a second one creates a second record.

That distinction is the whole problem. When a batch dies at file 740 of 1,200, the instinct is to restart it, because that is what you would do with a file copy. The transfer layer forgives you. The submission layer does not, and the rejections it issues are recorded against your account rather than quietly discarded.

What a careless retry actually costs

Shutterstock publishes the rejection names, and they are specific enough to work backwards from. An Identical Submission rejection means the same file is already pending review. An Approved on Site rejection means it is already live in your portfolio. Neither is a quality judgement; both are the system telling you that your retry arrived after the original succeeded.

The cost is not the single rejection. It is the pattern. Shutterstock's contributor guidelines state that if it sees repeated issues related to content submissions or account activity you may receive a warning, that multiple warnings may result in account suspension or termination, and that repeatedly resubmitting rejected content without correcting the identified issues is one of the listed issues. A retry loop that fires a thousand duplicates is the shape of problem that language describes.

Duplicate-related rejections, decoded

The Shutterstock rejection names a retried batch produces, and whether each one can be resubmitted: Identical Submission when a copy is already in review, Approved on Site when the file is already live, Previously Submitted Content for another account's file, Previously Rejected where only the Correction Needed route applies, and Suspended Submission which may not be resubmitted at all.

How to resume properly

The method is the same whatever tool you use, and it starts by refusing to trust your own log. A local log records what you attempted to send, not what the agency accepted; if the connection dropped, those two diverge precisely in the window you care about. Diagnosing why the batch died is a separate exercise — an upload that stalls halfway has its own checklist — but before you fix the cause, you need an accurate picture of what already landed.

Resuming a dead batch without creating duplicates

A six-step resume that avoids duplicate submissions: freeze the job, read state from each agency rather than your local log, sort files into never-arrived, arrived-but-unsubmitted and already-submitted, resume only the transfer, use correction routes instead of fresh submissions, and record per-file state so the next batch is resumable.

Step six is the one worth building once. A batch that knows its own per-file state is resumable by construction, and the same record solves the adjacent problem of duplicate uploads across agencies, because both questions reduce to knowing which file went where.

Which tools actually track submission state

Tools differ less in how fast they upload than in whether they remember what they already did. That is the capability a resume depends on, so it is the one worth comparing. The six below cover the realistic options, with the honest limitation of each.

A plain FTP or SFTP client

Xpiks

StockSubmitter

Wirestock

PhotoTag.ai

Rastock AI

When to use which

If your batches are small and you are comfortable reconciling by hand, a plain SFTP client plus the agency's own pending view is enough, and it is free. If you want one desktop application doing metadata and upload and you work from a single machine, Xpiks fits that shape. If approval status across many agencies is the thing you keep losing track of, StockSubmitter is built around exactly that dashboard, as long as you can live with submissions being the metered unit.

If you would rather not run a pipeline at all, Wirestock removes the problem in exchange for a share of revenue, and that is a reasonable trade for some people. If the metadata is your bottleneck rather than the delivery, PhotoTag.ai solves that half well and leaves the other half to you. And if you are delivering nightly batches to several agencies and need to know per agency where each file stands, that is the case a combined metadata and delivery pipeline is for.

Whichever you use, the rejection side is worth knowing cold, because a duplicate is not the only thing a hasty resubmission trips. The full list of Shutterstock rejection reasons is a better reference than any error message, and near-identical frames re-sent in a panic tend to come back as a similar content rejection instead.

If the part you want solved is knowing, per file and per agency, what actually landed, that is what delivery status tracking is for — the feature overview covers how it works alongside policy-aware metadata, and the pricing page has the trial terms.

Frequently asked questions

Can I just re-run a stock upload batch that failed halfway?

Not safely. Re-sending the bytes is harmless, because an FTP or SFTP transfer can resume a partial file. Re-submitting a file for review is not, because submission creates a record. On Shutterstock a repeat earns an Identical Submission rejection when a copy is already pending, or Approved on Site when the file is already published. Resume the transfer, then submit only what has not been submitted.

What does an Identical Submission rejection mean?

Shutterstock uses it to say the same file is already pending review on your account. It is not a quality judgement and there is nothing to correct: the original submission arrived and is in the queue. The right response is to stop retrying that file and let the pending copy finish review, rather than sending a third copy.

Do duplicate submissions put my contributor account at risk?

One will not. A pattern can. Shutterstock's contributor guidelines state that repeated issues related to content submissions or account activity may bring a warning, that multiple warnings may result in account suspension or termination, and that repeatedly resubmitting rejected content without correcting the identified issues is one of the listed issues. An unattended retry loop is the shape of problem that language covers.

How do I tell which files in a failed batch already landed?

Read it from the agency, not from your own log. A local log records what you attempted to send, and if the connection dropped, what you attempted and what arrived diverge exactly in the window you care about. Open each agency's pending-review and portfolio views and sort the batch into never arrived, arrived but not submitted, and already submitted or published.

Should I resubmit a file that was rejected, or correct it?

Correct it where the agency offers that route. Shutterstock says resubmitting previously rejected content will generally be rejected again for Previously Rejected, and that its Correction Needed feature covers rejections for metadata, translation, model or property releases, unnecessary releases and an invalid case number. It also states a second rejection is final and the asset is no longer eligible, so a blind resubmission can spend your last attempt.

Can I replace a file that is already approved?

On Shutterstock, yes, but only by deleting the existing version first, and it costs you something. Shutterstock states the new version is reviewed against current standards and that the download history and search ranking of the original do not transfer. For a file with any sales history that is usually a bad trade; a genuinely better version is often better uploaded as new work.