I have been using Exifer for many years to re-date and re-name my photos based on the EXIF dates from the camera(s).

I have now started using some alternative camera apps available on the iPhone (specifically Plastiq Camera and Hipstamatic) but these do not save any EXIF information in the images.

What I would like to do then is to insert the Date Digitised, Date Taken and Date Modified EXIF values based on the JPG file's Modified Date (which is correct to the time of taking the photo) and to also set the Make to Apple and Model to iPhone 3GS (although the process would apply to any JPG image which has no EXIF data, regardless of the source)

I have looked at Exifer, IrfanView, ExifTool, Picasa and others and they either cannot set the dates at all or can only set them to a specific date/time.

So, is there any software available which will automatically set the EXIF Dates based on the file's Modified date property?

Or, is there some switch in ExifTool that I have missed possibly?

I would like to be able to do this as a batch on a folder of images.

  • \$\begingroup\$ FWIW, Hipstamatic now includes EXIF data. Make a feature request to Plastiq Camera to do the same. \$\endgroup\$
    – mattdm
    Commented Jan 31, 2011 at 13:40
  • \$\begingroup\$ @mattdm - Yep, they have done for a few versions now. Makes things much easier! \$\endgroup\$
    – Shevek
    Commented Feb 1, 2011 at 9:25

5 Answers 5


I think you can do it with ExifTool:

exiftool -v "-FileModifyDate>DateTimeOriginal" *

Tried on some copies of jpegs and it seems to have worked.

  • 5
    \$\begingroup\$ In fact exiftool -v "-FileModifyDate>AllDates" * did all 3 dates \$\endgroup\$
    – Shevek
    Commented Sep 1, 2010 at 23:05
  • \$\begingroup\$ @Shevek - You're quite welcome! \$\endgroup\$
    – Joanne C
    Commented Sep 2, 2010 at 0:24
  • \$\begingroup\$ Great, many thanks! I needed this to make ImageMagicks mogrify tool imprint the timestamp on photos when there where no EXIF dates inside. \$\endgroup\$ Commented Jul 4, 2012 at 20:00

In addition to the much-more-powerful exiftool, one can also use jhead for simple things like this.

jhead -dsft *.jpg

It will also handle renaming-based-on-time, so you can skip exifer entirely.

In the case where your files do not have existing EXIF, you will need to create it, which jhead can also do, in the same pass with the addition of the -mkexif flag:

jhead -mkexif -dsft *.jpg

Of course, if your file does have EXIF headers already, don't use -mkexif. That part of the command does what it says and creates a whole new blank EXIF from scratch, as needed for files created by apps which don't themselves, as this question asks. If you just want to change the time without creating the EXIF, leave off that flag.


This can be done with a Python script, along the lines of:

import sys, os, datetime
filename = sys.argv[1]
ts = datetime.datetime.fromtimestamp(os.stat(filename).st_mtime)
ts_string = ts.strftime('%Y-%m-%d %H:%M:%S')
os.system('some_exif_tool -ts "%s" "%s"' % (ts_string, filename))

(I know this isn't really photographer-friendly answer, there's hope it might be helpful for someone.)


I finally found a tool that works easily without needing to script.

Here you go: http://www.relliksoftware.com/exifdatechanger/

  • \$\begingroup\$ It's not free for RAW files \$\endgroup\$
    – Shevek
    Commented Oct 2, 2014 at 6:46
  • \$\begingroup\$ This looks perfect to set EXIF from dates stored in the filenames! \$\endgroup\$
    – Omiod
    Commented Jun 20, 2015 at 11:42

You can also use ACDSee 14 to redate files in many, many different ways, in single or in batch mode. An excellent program, but maybe overkill for the Original Poster's problem. Much improved from ACDSee 7 from years ago!


Not the answer you're looking for? Browse other questions tagged or ask your own question.