I made some minor changes to the perl script to resolve an apparent issue where unread, but non-new messages were being marked read. See zip file for modified script. Feel free to clean up, etc. if you accept the changes. Based on your Version 0.2: Line 74 - RO status. I modified the "or" to an "and" since UW flags read messages as "RO". Others use "U". Without either "RO" or "U", there should be no flags. With the "or", my unread, but not new messages (Status: O) were being marked as read after the conversion. After the change, they're marked unread, but not new so the end user notices no change. Line 76 - write the ":2," regardless of extras. Dovecot writes messages with this flag for "unread" but not new. Not doing this will have them appear "new" within the mail client, even though they're sitting in "cur". I also wrote a bash script wrapper in order to facilitate a conversion from UW-IMAP using mbox to Dovecot using Maildir. I have yet to do the whole conversion, but a single 100MB mailbox takes < 1 minute on a dual P3-733. The wrapper script will convert down to three levels deep of mbox files/folders, as well as subscribe them within Dovecot. It can also create default "folders" for Mozilla/Thunderbird since that's our default client. On a different note, have you found a way to convert labels (X-Keywords)? The maildir msgs don't seem to be picked up - could be a client issue. Thanks for a great script - hope the changes are useful to you. -Rick