Pond5 FTP upload: the 80-Character file name trap

Pond5 keeps only the first 80 characters of a file name. A longer name uploads fine, then Apply CSV can never match it. What we measured, and the fix.

Thomas BerthouUpdated September 27, 20266 min read
Lake fish, a frame of our own footage
By the numbers
80
Characters of a file name Pond5 keeps (a whole catalogue, measured 2026-09-19)
76 + .mp4
The longest stem that keeps the whole name inside those 80 characters
26
Duplicate pairs created by one misread dry run on 2026-09-18
Under 4 min
Processing time measured on one 224 MB clip, 2026-09-11

Pond5 lets contributors upload footage over FTP, and for a lot of 4K clips that is the practical route. The FTP server's welcome banner tells you which characters a file name may contain and how large a file may be. It says nothing about length.

Length is where we lost a day, and where a contributor account we work with ended up holding 26 duplicate pairs. This is what we measured on that live account, what went wrong, and the one number that prevents it.

How the Pond5 FTP route works

Pond5's own upload dialog offers two routes: the web uploader, and FTP at ftp.pond5.com. The FTP server speaks explicit FTPS on port 21. AUTH TLS is accepted and the certificate verifies, so the password never needs to travel in clear.

That password is not your site password. You choose a separate FTP password under Account, then FTP, and the FTP username is shown on the same page.

The banner, read on 2026-09-11, includes this:

Note that file names may contain only alphanumeric characters (A-Z, a-z, 0-9), spaces, commas, hyphens, periods, @ signs, and underlines. All files must be under 5GB. Larger files will not be processed.

That is stricter than the web uploader. Parentheses, apostrophes and accented letters are out on the FTP route.

WhatMeasured on 2026-09-11
Host and portftp.pond5.com, port 21
EncryptionExplicit TLS (AUTH TLS), certificate valid
PasswordA separate FTP password, set under Account, then FTP
File namesLetters, digits, space, comma, hyphen, period, @, underscore
SizeUnder 5 GB, per the banner
Where files goFlat in the root, next to one folder named release

Why you cannot check the file after the transfer

On Adobe's SFTP you can read a file's size back after the transfer. On Pond5 you cannot.

Measured on 2026-09-11: a 224,191,384-byte clip went up, the server answered 226 Transfer complete, and a SIZE request two seconds later got 550 The file does not exist. The root listing showed only release. The file had already left for Pond5's processing.

So on Pond5, the proof of delivery is the 226 plus a byte count equal to the size of your local file. The clip showing up in your uploads list is the confirmation, and it comes later. That clip appeared 23 seconds after the transfer ended, still processing, and left processing in under four minutes.

On an 18-clip lot measured on 2026-09-20, 16 clips had finished processing after one minute and 17 after two. Processing is a queue. Count it per clip, never per lot.

The 80-character ceiling

Pond5 stores the original file name cut to 80 characters. We measured this on 2026-09-19 in the catalogue export of a contributor account we work with: across several thousand items, the longest OriginalFilename is exactly 80 characters. Not one is longer.

A longer name is not refused. The file uploads, gets processed, and sits in the catalogue under its name cut at 80. Pond5 even reads the title, description and keywords embedded in the file, so the clip looks described.

What breaks is Apply CSV, the bulk metadata form for your added files. Its key is originalfilename. A row carrying the full name, 87 to 104 characters in our case, matches nothing, because the account only ever kept the first 80 characters of it. The dry run lists nothing and the apply updates nothing.

The same 80 applies to titles. When nothing else names a clip, Pond5 uses the file name as its title. In an earlier export of the same catalogue, read on 2026-09-11, 13 titles are exactly 80 characters, cut mid-word from a file name.

How a misread dry run became 26 duplicate pairs

We learned this the expensive way. On 2026-09-17, a lot of 32 clips went to Pond5 over one FTPS session. Every transfer answered 226 Transfer complete. The dry run then listed 6 of them. The other 26 were not in the FTP root, not in processing, and not found under any status when we searched by their names.

On 2026-09-18 we read that as "Pond5 silently drops a long name" and uploaded the 26 again under shorter names. The next day, 2026-09-19, the catalogue export showed what had really happened: all 26 had been ingested on the first send, each under its name cut at 80. The second upload put 26 duplicate pairs on the account.

Duplicates are the one thing a contributor must not create. Pond5's FAQ says that "Resubmitting rejected content (or deleting and resubmitting pending content) will result in rejection", and its upload-time duplicate detection is reported to remember deleted files.

A dry run answers a question about names, not about files. If it lists nothing, the clip may still be on the account under a shorter name. Before you send anything twice, read your catalogue export (Pond5's CSV of every clip you uploaded) and look for the name Pond5 kept.

Why the stem stops at 76

The fix is arithmetic. Pond5 keeps 80 characters. The extension .mp4 or .mov takes 4 of them. So the stem, the part before the extension, gets at most 76 characters, and the whole name then fits inside what Pond5 stores. The key in your CSV and the key on the account are the same string, every time.

Two habits keep the name safe on the way there:

  • Sanitise before you cut. Lake (1).mp4 holds two characters the FTP route does not take. Replace them first, then count.
  • Check for collisions after sanitising. Two different names can become one: a(1).mp4 and a 1.mp4 both end up as a 1.mp4. Two clips under one name on one account is exactly the duplicate you are trying to avoid.

The tool below does both steps in your browser. Nothing you paste leaves your machine.

What travels in the file, and what only the CSV carries

Pond5 does read metadata embedded in the video. Measured on 2026-09-11 on a clip carrying XMP written with ExifTool: the title, the description and all 49 keywords came through, in the order sent, multi-word keywords kept.

Four fields did not come through, and Pond5 filled them with its defaults:

FieldFrom embedded XMP aloneNeeds Apply CSV
Title, description, keywordsRead, keywords in orderOptional: a CSV keyword cell replaces the list
Location country"Not Relevant"Yes
Date createdThe file's creation time, which was the export date, not the shootYes
Price modeThe account's defaultYes
Includes audio"Yes", on a clip with no audio trackYes

So a clip that Apply CSV cannot reach keeps its title and keywords, but carries a wrong audio flag, no country and the wrong date. That is the real cost of a name longer than 80 characters. Note too that a CSV keyword cell replaces the embedded list rather than adding to it, so send the complete list in the CSV.

Uploading is not submitting

A processed clip waits at Needs Edits until a person presses Pond5's own Submit. Nothing above submits anything. If a clip needs fixing, fix it in place on its edit page rather than deleting it and uploading it again.

This is how Rushlot handles Pond5. It names each file after your own title inside the FTP character set and cuts the stem to 76 characters plus the extension. Before a byte moves, a dry run checks what the account already holds, and a name it already has is never sent. It uploads over FTPS, counts a delivery only on the 226 with a matching byte count, and applies the CSV to each clip once, the minute Pond5 finishes processing it. You review every clip before anything leaves, and you press Submit.

Frequently asked questions

It accepts the upload, and the clip is processed. But Pond5 stores the original file name cut to 80 characters, so an Apply CSV row keyed on the full, longer name matches nothing. The clip keeps only what its embedded XMP carried.

The FTP server's own banner allows letters A-Z and a-z, digits 0-9, spaces, commas, hyphens, periods, @ signs and underscores. Parentheses, apostrophes and accented letters are not in that list.

No. The FTP password is a separate one that you choose under Account, then FTP. The server accepts explicit TLS (FTPS) on port 21, so that password does not travel in clear.

Yes. Measured on 2026-09-11, Pond5 read the embedded XMP title, description and keywords, keywords in the order sent. Country, date created, price mode and the audio flag did not come through and need Apply CSV.

One 224 MB clip left processing in under four minutes on 2026-09-11. On an 18-clip lot on 2026-09-20, 16 clips were processed after one minute and 17 after two. It is a queue, so count it per clip, not per lot.

No. A processed clip waits at Needs Edits until a person presses Pond5's own Submit. Correct a clip in place rather than deleting and uploading it again.

Sources

  1. Pond5 FTP server banner (file name characters, 'under 5GB'), read over explicit TLS on 2026-09-11
  2. First FTPS transfer to Pond5, measured on 2026-09-11 on a live contributor account: 226, file gone from the root two seconds later, processed in under four minutes
  3. Pond5 catalogue export of a contributor account we work with, read on 2026-09-19: no original file name longer than 80 characters across the whole catalogue
  4. Pond5 Apply CSV and its dry run, driven end to end on 2026-09-11; embedded XMP read-back on the same clip
  5. Processing times of an 18-clip lot, measured on 2026-09-20
  6. Pond5 contributor FAQ on resubmitting rejected clips, and on deleting and resubmitting pending ones (public)
Back to the blog