Importing an Existing Photo Library into Piwigo: How Does It Work?

When an organization decides to implement Piwigo, sometimes the photo library starts from scratch. But more often than not, there is already a system in place: a photo libray tool, a Digital Asset Management (DAM) system, a CMS like WordPress or Drupal, or even a custom-built solution. In that case, starting over is out of the question—users want to preserve their structure, albums, and metadata (titles, authors, descriptions, copyrights, tags…).
So, how does it work? What can be imported? How? And how easy—or complicated—is it? Let’s take a look, with real examples from the Piwigo team.
The Custom Import Process
When a client asks us to migrate an existing photo library into Piwigo, the general method is always the same, regardless of the previous software:
- The client provides a spreadsheet (CSV or Excel), with one row per photo and columns for metadata: filename, title, author, date, description, tags, albums…
- They also send us the media files, ideally via an FTP account we set up for them. In some cases, we’ve also received hard drives by post or 220 GB zip files uploaded to cloud storage!
- We prepare a development instance of Piwigo, where we first import the images. Then, we match the spreadsheet data with the imported files to populate properties, assign images to albums and tags, and so on.
This matching step (called mapping) is the most delicate: each row in the spreadsheet must correspond exactly to a file. And that’s not always straightforward…
What Makes the Import Complicated?
Several factors can slow down the process:
- Filenames: Sometimes the filenames in the CSV don’t exactly match the actual files (accents, special characters, spaces, different extensions, etc.). This often requires cleanup and reprocessing.
- Duplicates: There may be several files with the same name in different folders, complicating automatic mapping.
- Useless or empty columns: We sometimes spend time analyzing data we end up not importing.
- Rules to define: In some cases, filenames can’t be used for mapping at all. We then need to get creative—maybe by writing a custom algorithm to extract a date or another property from the filename.
- Complex or locked exports: Sometimes, the hardest part is getting the data out of the previous system. Some vendors charge thousands of euros for data exports, or deliver hard-to-exploit files. At Piwigo, we think that’s unacceptable—your data is yours, period.
Finally, one of the most time-consuming parts is working with the client: What do you want to keep? What should we do with this column? Does this field have real value? All of this is discussed together, and each project is unique.
Want to Handle the Import Yourself?
Custom data migration is included in Piwigo’s VIP plans. Other clients, including self-hosted users, can request a quote. As you’ve seen, this process is never automatic—it takes time and expertise, so it can’t be free.
However, if you’re on a limited budget, here are a few solutions to help you import your files into Piwigo:
- Piwigo Remote Sync: Automatically imports a local folder tree into Piwigo, preserving the folder structure as albums.
- Initial FTP Import (for piwigo.com clients): We can provide an FTP account for you to upload your files. We then take care of the base import and create albums based on your folder structure.
- Properties Mass Update plugin: Allows you to import metadata from a CSV file. You need one file per property (title, description, author, tags…). The files must already be in Piwigo, and the filenames must match exactly.
- Flickr2Piwigo plugin: If you previously used Flickr, this plugin lets you import your albums or photos in bulk, along with associated metadata.
Real-World Examples: We Did It for Them
Here are a few examples of clients for whom we performed custom data imports. Their photos were originally stored in various systems like Drupal, Ajaris, ePhoto, or Oodrive.
As you’ll see, each case is unique—and there are always surprises!
INRAE
The vendor of INRAE’s former photo library provided a CSV export, but the file was corrupted: some lines contained data for two photos at once, which we had to manually clean up.
Another challenge: there was no column to indicate which album each photo belonged to. We had to infer the folder structure from the filenames and write a custom algorithm to recreate the album hierarchy. This required several iterations with the client.
London Legacy
This London government agency manages the photo archive for the 2012 Olympics. We received a complex database dump (each custom field in a separate table) and a CSV with 30+ columns, plus a 220 GB zip file on Google Drive—of which 100 GB turned out to be unnecessary duplicates and backups. It took quite a bit of time to sort and download everything!
That’s why we now recommend FTP transfers 😊
Once the data was cleaned, we worked with the client to determine the best way to use each column in Piwigo. For example:
- The “collection” column sometimes contained multiple values—we used that to create albums.
- The “location” column also had multiple values—we turned those into tags.
The client paid €1300 for the custom import. That might sound like a lot, but imagine manually importing and tagging 27,000 photos in Piwigo…
In the end, the team was delighted:
“We didn’t expect it to be this good—this is way better than our previous system!”
Grand Paris Seine et Oise (GPSEO)
This local authority previously used a different photo management system. Fortunately, the vendor cooperated to help recover the data—but GPSEO still had to pay €2000–3000 to get the full export.
What we received:
- A CSV with the files and their properties
- A CSV with a complex multi-level thesaurus
- 200 GB of images uploaded via FTP
The challenge: each photo was linked to only one entry in the thesaurus (e.g., “skatepark”), without any information about its higher-level category. But “skatepark” might exist in multiple branches, like under “urban planning” or “leisure.” We had to manually decide, in collaboration with the client, where each photo belonged.
Once the import was completed, Julie, a Piwigo partner and photo librarian, stepped in to fine-tune albums and tags.
Foyers de Charité
This client also used another photo management tool. Their data was relatively clean: 3,200 photos, 14 GB, and a metadata CSV. Still, some cleanup was needed—dates were written out in full text, and filenames in the CSV included accented characters, while the files themselves did not.
The files were transferred via FTP, and the import went smoothly after cleaning.
In Summary
Importing a photo library into Piwigo is rarely plug-and-play—but it’s absolutely doable. It all depends on the quality of your data, the original format, and your specific needs.
Our role is to help you make the right choices: what to keep, how to structure your albums, which metadata matters, and how to ensure your users can find what they need.
One last thing worth repeating: at Piwigo, your data truly belongs to you. We will never lock you into a system that makes it hard or expensive to export your content. If you ever decide to leave Piwigo, you’ll be able to recover your full photo library and metadata—no strings attached 😊