The Filename Tool is a free web app that helps you create clear, descriptive, archival filenames. The tool guides you toward structured filenames that can include dates, descriptions, authors, cameras, versions, flags, and more — making your files easier to recognize, sort, and retrieve. The tool also handles the small but important fiddly bits for you (for example, replacing spaces with underscores) and runs entirely on your own device, so your work remains private and secure.
Pipsqueak’s Filename Tool is an opinionated app we built to support our own workflow. We manage hundreds of thousands of files for ourselves and clients and, over time, we’ve developed practical techniques for naming files. Rather than write the world’s most boring book, we baked those techniques into this tool. We haven’t found anything else that tackles this particular problem, so we polished it up and made our tool available for use by everyone. Empires may have been lost to history because they named their files document1 and buried them in a folder called misc stuff.
Rarely in tech will you find a more contentious subject than filenaming conventions. And tech loves to argue about such things. Tabs vs. spaces? Significant whitespace? CamelCase vs. snake_case vs. kebab-case? Those debates pale in comparison.
So, knowing full well what we’re stepping into, we’ve gone a step further: we’ve codified our opinions into software. Not content to merely argue about filenames, we’ve built a tool to drag our views into battle — an escalation in the never-ending war of filenaming conventions.
We prefer filenames that are long, descriptive, and packed with useful details, e.g. 2025-08-23-Letter_to_Anna_Beringer-Website_Proposal-by_Christopher_Werby-output-from_word-as_sent.pdf If you favor terse filenames, e.g. ANNALET1.PDF, this tool won’t be your cup of tea. If you’re content with filenames generated automatically by your camera or phone, e.g. IMG_3499.JPG, then this tool will feel like overkill. If you already need to work within specific filenaming conventions, this tool may not be adaptable enough to meet your needs. But if you care about filenames — if you want them to be clear, consistent, organized, and instantly meaningful — this tool was built for you. It’s especially valuable for people who juggle lots of projects, manage archives of documents or images, or collaborate with others.
Adopting a disciplined naming system helps ensure that six months (or six years) from now, you’ll be able to quickly find exactly what you need. And files rarely exist in isolation; most projects are built from many. When those files are named well, their relationships to one another are clear. So you’ll be able to backtrack from an output file to the original source, or from a final report to the data it was based on. Good filenames help you retrace your steps.
What this tool isn’t: it’s not a bulk renamer, a file manager, or a digital asset management system. It’s not a substitute for good folder organization, backups, or version control. It is a tool that helps you create better filenames, one at a time. If you have thousands of files to rename, you might use this tool to create a naming convention, then apply that convention with a bulk renamer (we particularly like A Better Finder Rename and Name Mangler). Filename Tool comes with no guarantees — just the sincere hope it improves your digital life.
Who is this tool for? Everyone, of course — but some more than others:
Filename Tool does two separate things: it cleans and standardizes existing filenames, and it helps you create new ones. To clean a name, drag or paste it into the Matcher Panel and copy the result. To build a new name, start with an existing file or start from scratch. Fill in only what matters in the tool’s panels — leave the rest blank. When you’re done, copy the result to rename your file or use it to create a new file; the tool enforces naming rules, but the content is up to you.
Use the tool as much as you’d like for free. There are no ads, no subscriptions, and nothing to buy.
It’s safe to experiment to get comfortable with the tool. Copy and then paste in one of the sample filenames or drag in one of your files, click around, try things out. The tool never renames your files automatically; nothing changes unless you do it yourself. You can click any button or drag in any file without altering filenames on your computer. Once loaded, you can use the tool offline. None of the data you enter ever leaves your computer.
You may have heard advice to keep filenames under 31 characters. That conservative rule comes from the 1980s and 1990s — Classic Mac OS had a 31-character limit, and Windows was once saddled with 8.3 names. None of that applies today; the 31-character rule is obsolete. On today’s systems, descriptive filenames of 100 to 150 characters and more are safe, human-friendly, and recommended. Problems can still arise on Windows with deep folder nesting (but, since 2016, that can be cured by flipping a switch) or when using quite old legacy software that hasn’t caught up. See How Long Can Filenames Really Be? for the technical details.
That said, there are plenty of other ways that filenames can break computer systems. Illegal characters and sometimes even spaces or other filename oddities aren’t just quirks — they’re saboteurs. They can break backups, crash scripts, refuse to open on another operating system, or even just vanish when syncing to the cloud or copying to a flash drive. The web adds its own challenges: many characters and spaces need to be encoded in order to work properly in a URL, turning a filename: My Summer Vacation: Paris & Rome (Final Edit).pdf into the positively unfriendly to humans: My%20Summer%20Vacation%3A%20Paris%20%26%20Rome%20%28Final%20Edit%29.pdf The Filename Tool silently grooms filenames to avoid these pitfalls, ensuring that your filenames are not only descriptive but also compliant with modern filesystem standards. Just pasting My Summer Vacation: Paris & Rome (Final Edit).pdf into the Filename Tool, and doing nothing else, creates a much cleaner version without those potentially deadly colons, ampersands, and parentheses: My_Summer_Vacation-Paris_and_Rome-Final_Edit.pdf The web version of that corrected filename is identical because there are no characters that need encoding. If you paste that previous web-encoded version into the tool, you’ll get back the same clean result.
Evolving that filename with a few more additions gives you: 2024-08-03-My_Summer_Vacation-Paris_and_Rome-by_Modus_Grant-output-from_lightroom-as_used-v02.pdf This version is packed with useful info that helps tell the file’s story.
In short, you clean a filename by just pasting or dragging it in, and then you use the tool to add more details if you want.
To create a filename from scratch, skip the Matcher Panel. The Matcher Panel is where you start if you have an existing file that you want to either rename or use as the basis for renaming another file.
Either drag a file from your computer or paste a full filename into the Matcher Panel. The tool will parse the filename and, for a dragged file, try to extract metadata, and will use that to fill in the fields in the other panels. You can then adjust any of those fields and copy out the new filename.
If you drag in an image file, the tool will try to extract its dimensions automatically. Sometimes, it will display a preview that will help you see the width-to-height ratio. Click on an image preview to rotate it; the file dimensions will follow suit. Even if you have the wrong dimensions written into the filename, the tool will use the actual dimensions of the image file you dragged in and update the filename.
A small convenience feature: if you are dragging in a file and the Matcher Panel is not in view, hover over the Matcher link in the navigation while still dragging the file. The Matcher Panel should scroll into view and allow you to drop the file there.
When matching an image file that contains a retina suffix, the dimensions in the filename will be preserved even when they disagree with the image’s actual dimensions. Retina images’ internal dimensions are usually larger than their advertised size.
If you drag in a camera original file with the filename created by many (but not all) cameras, the tool will try to extract date, time, dimension, camera, and orientation information from the file. If you have a file named IMG_3499.JPG, the tool might produce a filename like: 2025-09-19-140858-INFO-iPhone_13_Pro-3499-3024x4032.jpgIt’s up to you to change the INFO placeholder to something descriptive, add a creator/editor, and maybe add an original flag. The final filename might look like: 2025-09-19-140858-Garden-Rose_Bush-CW-iPhone_13_Pro-3499-original-3024x4032.jpg
The Matcher Panel works best with filenames previously created with this tool. For a non-conforming filename, the tool tries to get it to conform to the naming conventions. This can be hit or miss; there are too many filenames out there to be able to parse them all. The tool will do its best by removing spaces and illegal characters, and trying to figure out which text belongs in what fields. For example, paste in Project Report *Final?? (John's Copy)/<DRAFT> 2024:09:22 v2.DOCXand the tool will produce 2024-09-22-Project_Report_Final-Johns_Copy-DRAFT-v02.docx The tool tries particularly hard to discern dates and times. If it detects what it thinks is a date, or a date with an optional time, it tries to convert that into the standard form used by the tool and moves it to the front of the filename. If you paste in a filename, be sure to include the extension. So, for example, if you paste in a screenshot in Apple’s default filename: Screenshot 2025-10-08 at 2.34.56 PM.pngthe tool converts it to 2025-10-08_143456-Screenshot.png

With the checkmark off, if the filename can be parsed, the tool resets all its options to match the filename. The resulting filename can be adjusted in the tool and copied out again, cleaned and normalized in the process. If the tool gets it wrong, and the filename it produces isn’t any good, then don’t use that filename.
The filename displayed in the pasted filename field stays as it was when pasted or dragged and doesn’t change as the tool’s options are modified. To see the filename as modified, look at the gray “result” filenames at the bottom of each panel. They’re all synchronized and update immediately with your changes. And if you click on one of them, it will copy to your clipboard; shift-click gets you the filename without the extension. You can also look at the Results Panel for the final filename and its various subparts.
Be aware that if you paste in a filename (or drag in a file), make changes elsewhere using the tool, and then edit the filename in the Matcher Panel paste field, the tool will treat the edited filename as if it was newly pasted and will overwrite your previous changes. An edit button appears to try to stop you from doing this accidentally. Usually, the tool updates immediately as you type in various fields, but if you clicked the edit button to overwrite the filename shown in the Matcher Panel, you have to click out of the field (or press tab) to trigger the update.
There’s a Duplicate Matcher Panel at the bottom of the app for convenience. You can paste a filename or drag a file in there too. It stays in sync and works identically to the top Matcher Panel. Sometimes it’s handy to match files right next to the Results Panel.
The Dimensions Panel allows you to specify the width and height of the original file. In the filename, dimensions are always width first, followed by height; in the middle is an “x” character (e.g. 1000x500). You can enter these values manually or use the extracted dimensions from an image file. If you adjust the Percentage dropdown, you can scale the dimensions proportionally. You can enter either a New Width or a New Height (bottom set of inputs) and the other will be filled in automatically keeping the file’s proportions. [Note that dimensions use the x alphabet character rather than the more correct × multiplication sign because the latter is not universally supported in filenames.]
To work on a group of files from the same device, use the Set Default Device from the dropdown in this panel. We don’t have every device by a longshot, but if yours happens to be there, select the device from the dropdown and it will fill in the dimensions, format, and camera fields, and save that information between sessions. This is just a little time-saving helper when working with many files of the same type; you can always fill in those fields manually.
Units are usually in pixels, but if you use another unit — e.g. inches — for the original, a resolution input field will appear, and you’ll get corresponding pixels at a set resolution in the New Width and New Height fields. For example, if you choose 8x10 inches at 300 pixels per inch, you’ll get 2400x3000 pixels in the bottom New Width and New Height fields. Units are reset to pixels on each file change.
The Workflow Defaults Settings section lets you set the default extension when the app is loaded. It also lets you set the default extensions — they have to be a recognized format — for the modified, output, and web steps when you use the Workflow for Images Buttons. Finally, you can set the default web compression value for the workflow web step. If you prep a lot of web images, set your defaults once — the tool remembers them between sessions on the same computer and browser. The initial workflow defaults assume you use Photoshop psd to edit files, and use jpg as the format for originals, output, and web images. If you use something else, change the defaults. And, of course, for any individual file, you can always change the format, even to an extension unknown to the tool.
There’s a guide to sizing retina images built into the Dimensions Panel. If you take a large image and sufficiently shrink its size in New Width and New Height, you’ll be shown a set of dimensions appropriate for different retina images. For example, if you start with 3000x3000 and enter 300 in the New Width field, the New Width and New Height will be 300x300, and a guide to sizing retina versions will appear. You’ll be shown:
Retina Version @2x
600 × 600 Retina Version @3x
900 × 900 Retina Version @4x
1200 × 1200 Retina Version @5x
1500 × 1500Other than dimensions and flags, the Details Panel contains the information used in the filename. You’ll do the majority of your filenaming work in this panel, keeping in mind that you can skip most fields; the Format field is the only one required and the Basename fields are the most important. The tool enforces the fiddly bits of filenaming that make the filename parsable by the tool. Dates must be in ISO 8601 format (YYYY-MM-DD) or a subset. Dashes separate chunks of content, and spaces are replaced with underscores. Creator/Editor and Camera fields are in a particular form enforced by the tool. Reference numbers in the Ref field can’t have characters in them. Extensions are always in lowercase. And so on.
The Details Panel covers the essentials: date (and optional sort/time), two-part basename, format, compression, color space, versioning, creator/editor, camera name, reference and version numbers. For images you can add a retina suffix @2x; and for formats recognized as time-based, you can set the duration. Spaces are shown while you work for readability, but they are automatically converted to underscores in the final filenames.
Checkboxes across the app are disabled when the field they control is empty. For example, if there are no dimensions, the Use Dimensions? checkbox is disabled. If you enter dimensions, the checkbox becomes enabled and checked automatically. If you then uncheck the box, the dimensions are not used in the filename. There are many other checkboxes in the Filename Tool that work similarly.
2025-10-23. In a folder of images, these will sort the files correctly in chronological or reverse chronological order. An ISO 8601 date eliminates MM-DD-YY or DD-MM-YY ambiguity. Dates must be legal dates; the tool won’t let you enter something like 2025-13-99. Legal years begin in 1500 and continue through 2499. 2025-10-01 to 2025-10-03}. A date can be just the year, or just the year and month. For example, a date can be 2025-10, or even just 2025. Normally, the value is appended after the date preceded with an underscore and followed by a dash. 2025-10-23_003- but a Custom Sort Value can also appear before the date followed by a dash if the Sort First checkbox is checked. 003-2025-10-23- If the value contains a period (.), it must appear before the date and the Sort First option is enabled automatically. 595.789-2025-10-23- If a sort value with a period was placed after the date, it could be misinterpreted when the filename is subsequently matched. Without periods, the Custom Sort Value may be placed either before or after the date. Sort values after the date are handy for ordering files within a particular day.
A sort value must contain at least three numeric digits; leading zeros are used to pad shorter digit strings. A time value contains exactly six digits in the form HHMMSS, representing 24-hour time, and cannot have a period. A value that conforms to the rules for a time is treated as a time by the interface; otherwise the value is treated as a sort. Time values cannot be placed before the date. 2025-10-23_123000-
Sort values may include periods inside the number, but periods cannot appear at the beginning or end. 595.789-2025-10-23- Interior periods permit formats like Dewey Decimal values to be used, at least in part, with the Filename Tool. Sort values with periods cannot be placed after the date.
The range of four digit sort values from 1800 to 2099 are not permitted because they look like years and confuse the tool; you’ll see the red error indicator if you try to enter them. If you need to use such values, please add a leading zero; one will be added for you, if necessary, when you exit the sort field.
The Sort First checkbox places the sort value before the date at the very beginning of the filename. This option is helpful if you want to control the order of files, such as when creating a slideshow from photos taken on different dates. The Sort First checkbox is disabled if its current value can’t be changed: checked for a sort with a period, unchecked for a time.
The Use Sort/Time? checkbox lets you remove the value from the filename even if one is entered in the field.
The incrementer buttons (− and +) adjust numeric values as expected, and they ignore any periods in the value during calculation.
INFO placeholder in the first Basename field. It’s intended that you change it. @2x to the end of the filename before the extension. This control is disabled for non-visual file formats. See the Dimensions Panel for access to a guide to sizing retina images for a particular set of dimensions. 0m49s while 1 hour, 2 minutes, and 3 seconds is 1h2m03s. The incrementer − and + buttons do what you’d expect. IMG_7687.CR2, then 7687 would be the Ref number. When images go from original → modified → output → web using the Workflow for Images Buttons, the Ref is preserved across all versions to provide a search hook so that all can be retrieved together. Sometimes an image needs two reference numbers; e.g. for an image composite, you can enter the two images’ reference numbers separated by a plus sign. This works for three or more reference numbers, too: 1234+5678+9012 v01. Although versions are typically solely numeric (with the leading v prefix), we find ourselves sometimes adding a single capital letter after the version number for variations on a theme, such as a video compressed at different quality levels (e.g., v01B, v12B). The incrementor − and + buttons ignore the letter. original flag will turn on and the Version will be turned off; if there’s no basename, INFO will be added to remind you. Similarly, if there’s no Ref, 99999 will be displayed in the hope that you’ll change it. If you press Modified, the original flag will turn off and the Version will be turned on. You can always override these choices in any way you please. The buttons use the defaults set in the Dimensions Panel. Copy a camera original sample file, 2025-06-02_134400-Modern_Penthouse-Living_Area_and_Kitchen-INT-by_Isabella_Rosa-5D_Mark_IV-2969-original-select-UNC-6720x4480.jpg and paste it into the Matcher Panel. Then press each of the Workflow for Images Buttons to see how they alter the filename.A good filename puts its sort information first. Most often, that’s a well-structured ISO date that enables the files to be sorted chronologically even in the absence of their metadata. Without a date or other sort value, filenames will fall back to alphabetical order, ascending or descending.
In film production, the sort order for media files is critical. Editors often need to access their media files by roll or scene. Next, they need to be able to dig down to individual shots and, from there, to specific takes. When the media files are named to support this hierarchy, locating the right file is much easier. See the Logging Section for more on this feature.
Sort order underpins many other organizational systems as well—from the Dewey Decimal Classification (DDC) and the Universal Decimal Classification (UDC), to Johnny Decimal, or even a custom sequence for something like a slideshow. Systems such as DDC and UDC divide knowledge into broad categories, which are then further subdivided; related items naturally cluster together. Simply embedding these identifiers somewhere in a filename isn’t enough. For proper ordering, the Custom Sort Value must be placed at the start of the filename. In the Filename Tool, the Sort First option ensures the Custom Sort Value precedes the date, if one is included.
The Filename Tool supports most numbering schemes, with one caveat: the Custom Sort Value must consist of digits only or interior periods—no other punctuation or letters. So, for example, the DDC (e.g. 595.789 for butterflies) or Johnny Decimal’s pairs of digits separated by a period (e.g. 15.52 with idiosyncratic categories and counters) will work. The Library of Congress Classification, which combines letters and numbers (e.g. HN59 .T39 2014), won’t work with the Filename Tool.
Here are sample filenames, created by the Filename Tool, with their parts labeled. Copy the filenames, paste in to the Matcher Panel, and fiddle with the fields to see how they were made. There are more sample filenames below.
An original photograph:
2025-06-02_134400-Modern_Penthouse-Living_Area_and_Kitchen-INT-by_Isabella_Rosa-5D_Mark_IV-2969-original-select-UNC-6720x4480.jpgCamera original photo with date and INT (or EXT) noted. Photographer name, camera, number, flags and dimensions. (UNC means uncompressed.)
Output logo image from Adobe Illustrator:
2025-09-11-UCLA-Logo-Page_Topper-CW-proxy-output-from_illust-for_web-unapproved-fgGreen-bgTrans-32-1000x500-v02.pngA filename can tell a story. A client logo for a topper is output from Adobe Illustrator for use on the web by CW. It has a green foreground over a transparent background, is saved at 32 bits, and is 1000px wide by 500px tall. This is the second version and, currently, it’s unapproved.
A video screencapture:
2025-05-23_195537-Panorama-Text_List_Blanking_Issue-CW-video-screenshot-mos-0m49s-H264-826x766.mp4For video files, an hour/minute/second input control to add duration appears.
Logging information between equals signs:
Apocalypse_Now=Day_48-Loc_Jungle-Unit_2-Camera_D-Scene_74-Take_2-Note_Explosions=Remaster_Effects-by_Larry_Franco-converted-scanned-slated-fg-plate-for_composite-1m12s-H264-3840x2160.movA complex filename containing flexible logging information for media production.
The Flags Panel allows flags to be applied to filenames in a consistent way. Flags help identify the content and state of the file. And they provide terms to search for across file trees.
Flags make the filenames expressive without becoming chaotic. They’re grouped into broad file categories (Code, Docs, Images, Media) plus a handful of actionable filters (Grade, Modification, To Do, and Type). You can search, pick from the grid, or reuse recent choices. There’s a final category, Custom, that appears when you create some, discussed below.
There are some flags, marked with an ellipsis, which accept custom text supplied by the user. For example, the Background Color flag expects that you’ll enter a color when you select it. Enter White or the hex value FFF in the text field that appears when you click it. This feature allows specific custom details to make it into the filename without breaking the structure.
A matched filename with flags will activate the corresponding flags in the tool. The Recents group shows the last sixteen flags chosen or matched. They persist between sessions. A flag that can contain text — marked with an ellipsis — retains that text so it can easily be reused.
Flags display in a particular order in a filename without regard to the order they were selected. This helps ensure consistency between filenames. The Backup flag is always displayed last, for example.
The tool groups all files into four broad categories: Code, Docs, Images, Media. To try to show you the most relevant flags, the tool initially selects one of those flag filters based on your file format. You can always choose another or press the All button to remove filters.
The four actionable filter categories — Grade, Modification, To Do, and Type — need some explanation. In the Flags Panel, click each filter to see which flags it includes to get familiar with them, or read on.
Approved, As Sent, As Used, Select, Final, Best, Good, Fair, Poor, Reject, Discard, Outtake, Unapproved, Not Used, Superseded, Trash, plus quality notes like Bad or Unfocused. Cropped, Adjusted, Edited, Retouched, Corrected, Converted, Annotated, Filtered, Composited, Stitched, Patched, Rotated, Trimmed, Scaled, Upsize, Isolated, Shaped, Outlined. To Edit) to indicate work that remains, rather than past tense flags like Edited used in Modifications). Add Text is an exception. Examples: To Crop, To Filter, To Rotate, To Patch, To Stitch, To Convert, To Annotate, To Isolate, To Trim and Add Text. Photo, Video, Audio, Screenshot, Scanned, Rendered, Live Photo, RAW, Layered, Layout, Motion Graphic, Rephotographed, Recto, Verso, Original, Revision, Output, Markup; and workflow uses such as For Web, For Print, Master, Production, Intermediate, Proxy, Reference, Sample, Proof, Concept, Mockup, Mechanical, Element, Alt, Tmp, Backup, Internal, Test. needs review will appear as a custom flag in the grid labeled Needs Review and in the filename as -needs_review-. A Custom Flag will be retained in your recents; and in local storage for later use, until you delete it. Rush and is -rush- in the filename. But sometimes you want to preserve the case of your custom flag as you entered it: BGBlue. For that, check the Don’t Change Case option, and it will appear in the label as BGBlue and in the filename as -BGBlue-. You can always edit a Custom Flag if you change your mind.We deliberately exclude final from the list of standard flags. In real-world workflows, final often leads to chaotic ambiguity.
Final is often prematurely applied to projects that continue to evolve. Imagine a script marked Final. Is it the final draft, the editor’s copy, the submission draft, the optioned version, the production script, the rewrites, or the conformed archive?
Instead, Filename Tool’s flags attempt to be unambiguous to capture the actual status of a file:
By using explicit flags, anyone can tell, at a glance, where the file is in its lifecycle without falling back on the often subsequently incorrect final.
But, if you insist, add Final as a Custom Flag. Be prepared, though, to also add Final Revised, Final2, Final Final, and Really Final as your project continues to evolve.
The idea of the tool is to create a filename that you can copy to your clipboard and use to rename or create your file. As the filename is created, it is displayed in the Results Panel that allows you to select different parts of the filename to copy depending on your needs. You can also copy the full filename from the bottom of any of the tool’s panels by clicking on the gray filename found there. A shift-click copies the filename without the extension.
The Full Filenames section at the top of the Results Panel is probably what you want — you can copy with or without the extension — but the “Other Useful Partial Filename Bits” are, well, useful too. The Results Panel, and the clickable gray “result” filename at the bottom of each panel, show real-time feedback on the filename being created so you can keep an eye on the filename as you make modifications.
The full filename also shows the total number of characters of the file. If you have emojis or unicode characters in your filename, the actual number of characters may be different from the visible count. If they are different, both are shown.
The Logging Section was built for productions that track scene/shot/take and similar metadata. Not everyone will need this feature, but it’s useful for those who do. Open it only when it’s needed, and it will stay out of your way when it’s not. Matched files that contain logging information will automatically open the Logging Section and reveal logging fields populated with values.
Every production has their own approach to logging their footage, so the Logging Section is designed to be flexible and customizable, with label/value pairs (called “tokens”), settable in any order. The labels can be saved as defaults and are preserved between sessions. Logging information is always set off from other file fields with a pair of equal signs in the filename; those delimiters are added automatically and are required.
Two tokens of logging information might look like this: Scene_74-Take_2- The label is the first part up to the first space (here, “Scene” and “Take”); the value is everything afterwards up to the first dash (here, “74” and “2”).
Labels cannot contain spaces; if you type a space in a label field, you’ll be advanced to the corresponding value field. Values cannot contain dashes. Illegal characters are removed automatically. Values may include spaces that will be converted to underscores. For example, with the label “Location” and the value “Bronson Canyon,” the filename shows the token Location_Bronson_Canyon-. The label is everything before the first underscore, and the value is everything after, up to the next dash or the closing equals sign.
The labels in the Logging Section will be retained for the next file, or they can be cleared with the buttons in the panel. You can edit, add, or delete labels and values as needed. Up to fifteen label/value pairs can be set in the filename. Paste a file containing logging information into the Matcher Panel to see how it works. Apocalypse_Now=Day_48-Loc_Jungle-Unit_2-Camera_D-Scene_74-Take_2-Note_Explosions=Remaster_Effects-by_Larry_Franco-converted-scanned-slated-fg-plate-for_composite-1m12s-H264-3840x2160.mov
Logging labels can be customized for each project. Your current set is saved between sessions until you change it. You can save the current labels as your local default and restore them later to undo subsequent changes. If you match a file that already uses the logging labels you want, you can set those as your local default, making it easy to switch between different label sets for different projects. Labels without values won’t appear in the current filename, but they’ll remain available in the Logging Section for use with a future file.
The buttons in the Logging Section are:
When we start a file, we often create the filename first using Filename Tool. This solves a number of problems: we will quickly save the newly created file with the new filename so we won’t be working on an unsaved file; this avoids data loss. It also helps focus on exactly what the file will do. If we change our minds later, it’s easy to drag the filename into the tool and change it. If the file is a revision, we can drag in the old filename and update it to reflect the new version. Maybe the old filename should gain a “superseded” flag; maybe the new file should get a new date and increment the version number.
For periodic files, like monthly bank statements, once you’ve created the first statement’s filename, you can drag it into the tool to capture it, update the date, and then use the revised filename for the new file. Everything stays very consistent and organized that way. Do you need to use the tool just to update the date? Not really. Once you’ve established a good filename convention, you can just copy an old filename and update its date, with or without the tool. Do whichever is most convenient: 2025-09-30-Bank_Statement-Personal-Joint_Checking-by_Union_Bank-1387.pdf
We find the tool especially useful for tracking an image or media file through different stages of creation, editing, and production. By giving the camera original a clear name (preferably with a reference number), you can drag in updated versions of the file at any point in its lifecycle and use the Workflow for Images Buttons to modify the corresponding versions. This makes it easy to follow changes while maintaining a consistent naming convention that captures important production details. This sample filename for a camera original is a good one to try out the different workflow buttons, first to create a modified edited version, then an output version, and finally a web version: 2025-06-02_134400-Modern_Penthouse-Living_Area_and_Kitchen-INT-by_Isabella_Rosa-5D_Mark_IV-2969-original-select-UNC-6720x4480.jpg
Since you can match existing filenames with the tool, you can use it, copy the filename, and then close the browser window without losing anything. Think of the tool as disposable; you can always start with a fresh version. If you need to continue working with the same filename after you’ve closed the tool’s webpage, you can just reload the tool and paste the filename in. The tool will rematch the filename’s parts to the correct fields. Your recent flags and logging labels are automatically saved in local storage for next time. We have the tool bookmarked so that we can quickly open it when needed. Use it, close it, load it again when you need it again.
For decades, people were told to keep filenames short — often under 31 characters. That advice comes from obsolete limits: Classic Mac OS (before 1998) capped names at 31 characters, and older versions of Windows enforced an 8.3 naming convention. Those technical restrictions have been gone for over 25 years. The main compatibility issue today is total path length (mostly on Windows), not the length of the individual file name. Modern file systems support very long filenames: macOS and Linux allow up to 255 characters per name—that’s about three full lines of text—and Windows does as well — the old Windows limit was on the full path, not the individual filename.
On Windows, the historical MAX_PATH limit capped full paths at 260 characters, which included the drive letter, folder names, separators, and the file name. Since Windows 10 (Anniversary Update, 2016), this restriction can be removed by enabling “Win32 long paths” either through Group Policy or a registry change (LongPathsEnabled=1). See Microsoft Docs on how to make this change. On Windows 11, the setting is still present, but many modern applications already respect long paths by default.
Since Windows introduced long path support, many developers quickly updated their apps to support it, while others didn’t. Some older software and tools (especially those built against legacy APIs) may fail if paths exceed 260 characters — the OS supports it, but the application might not. By 2020, however, most actively maintained Windows applications had been updated to support long paths correctly.
With LongPathsEnabled=1 set, you’re generally safe to use long filenames on Windows; going forward this restriction will only become less relevant. If you rely on critical legacy Windows’ applications, it’s worth testing them to ensure they handle long paths properly.
Known issues: I’ve heard a report that Google Takeout, used to export data from Google services, may still truncate filenames exceeding 50 characters for some of their products.
Filenames exist within a broader system that includes folders and metadata, and all three work together to provide context. Folders provide hierarchy and grouping; metadata (like EXIF, document properties, tags, comments) adds rich, searchable detail; filenames provide a portable label that travels with the file. In a well-organized system, you’ll use all three: folders to cluster related work, metadata to add nuance and detail, and filenames to serve as the dependable, always-visible summary. The trick is deciding what belongs where so you’re not repeating yourself while still keeping each file understandable on its own.
Inside a carefully organized project tree, it can feel redundant to repeat the client, project, or date in every filename when that information exists in the directory path. Context helps provide meaning to a filename—until that context disappears. Files get emailed, copied to a USB stick, attached to emails, dropped into a chat, synced into “misc” folders, or ingested by systems that ignore your original structure. Metadata can be stripped, or be unreadable to other tools or operating systems, or it can simply be overlooked. When a file escapes its home, the only guaranteed context it carries is in its filename. That’s why we advocate putting key information right into the name.
You don’t need everything in the filename—just the most important bits that need to be durable. Use folders for “where this belongs” (client, project, phase) and for bulk grouping. Use metadata for details that are too long or too variable to live happily in a name (copyright, tags, camera settings, location). Then use the filename for short, stable identifiers that matter anywhere: an ISO date or range, a concise subject/basename, a creator/editor token, version, and other essential qualifiers/flags (e.g., “for_web”, “original”, “proxy”). This keeps a filename readable and useful without turning it into a paragraph, and provides necessary context if the file is plucked from its nest.
We’ve been asked about our folder conventions. There’s nothing universal about this; it’s what works for us. This is our base folder structure for most of our clients:
Client/ ├── Assets/ ├── Business/ ├── Incoming/ ├── Layout/ ├── Outgoing/ ├── Research/ ├── Text/ ├── Web/ └── Working/
These are the structured rules enforced by the Filename Tool written out separately from the app. You don’t need to read this to use the app, although reading the rest of this documentation would fill out the detail in these conventions. The naming conventions include the order of fields, the separators, and which elements always appear near the end.
My_Awesome_Project), and all spaces are converted to underscores in the filename. .pdf, .jpg, not .jpeg). From left to right, fields appear in this order if present. Skipped fields are simply omitted, but the order remains consistent.
001). There can be a sort or a time value, but not both.YYYY, YYYY-MM, or YYYY-MM-DD). Ranges are allowed with connecting words “to”, “and”, “thru,” or ”through” (2025-10-01 to 2025-10-03)HHMMSS) must appear after the date, and a numeric sort without a period may be after the date. Both are separated from the date with an underscore.+. +, such as 1234+5678). -0m49s-, -1h2m03s-). Seconds are always two digits with a leading zero if necessary, hours and minutes are not. -original-). Usually flags are all lowercase, but there are a few exceptions (e.g. -DRAFT-, -bgWhite-). There are built-in flags and custom flags. Certain privileged flags appear at or near the end of the filename such as -backup- or -alt-. Width x Height without spaces (e.g., 3000x2000). v followed by at least two digits (e.g., v01, v12), or digits followed by a single capital letter (e.g., v01B, v12B). @2x, @3x, etc. for high-dpi web images that use them. = symbols and set either between or after the Basename fields. All other filenaming features are also available. To accommodate the logging feature, the = symbol is reserved for this purpose.Here are some sample filenames created with the Filename Tool. Above, find more examples with information on how to read the filenames.
We plan to enhance Filename Tool over time. In the near term, we want to allow users to further customize the tool by adding their own formats and default cameras, similar to how the user can create Custom Flags. Each would require the user to supply a defined set of information about the format or camera and that information would reside in local storage so it would be private to the user and persist between sessions.
On our own system, we have other tools which can rename a folder of images using our consistent naming convention. This includes commercial bulk renaming programs and scripts we wrote for this purpose. They’re very useful, but they’re powerful and require careful handling to avoid unintended changes; we always make a copy of the folder first that we retain until we’re satisfied with the renaming results. We may eventually integrate similar functionality into this tool, but we’ll be cautious and will only do it if we can ensure that any batch operations are safe and user-friendly.
Beyond that, we’d also like to add an opt-in feature where a user could click a button that sends a preview image to an artificial intelligence model to suggest a basename for images which don’t have one. This would need to be done in a way that respects user privacy and data security, of course. And, since this is a free tool, we’d need to figure out how to provide that service without breaking our bank. Also, the round trip to the AI model can’t take longer than just a few seconds, or its value is diminished. Finally, the quality of the descriptions must be high enough to be genuinely useful.
If you have suggestions or feature requests, or if you find the tool to be useful, we’d like to hear it. Please email us at info@pipsqueak.com. If you need a file format or a default camera that we don’t have, we could add it for an interested user.
Proportions or Preview
Date Clarification
Think Michelin stars rather than movie rating. One is very good.
































