MrC's Convert to 1Password Utility

MrCMrC Community Moderator
edited September 8 in Mac


The Convert to 1Password Utility will convert exported password manager data, or other data, into a format that can be imported by 1Password. There is also a 1Password export converter for creating a compact, print-suitable format.

It can optionally securely test to see if your passwords are known to be compromised.

The utility runs on OS X or Windows, and the following converters are available:

1Password     KeePassX     PasswordWallet
Chrome     Keeper  Desktop     RoboForm
Clipperz     Keychain (macOS)     Safe in Cloud
CSV     Key Finder     SafeWallet
Data Guardian     LastPass     SPB Wallet
DataVault     LicenseKeeper     SplashID
EssentialPIM     mSecure     Sticky  Password
Enpass     Norton  Identity  Safe     True Key
eWallet     Passpack     vCard
F-Secure KEY     Password  Agent     Text files
Handy Safe     Password  Depot     Wallet 4
IronKey  Identity  Manager     Passwords  Plus     Yojimbo
Keepass 2     Password  Safe    

Let's Get Started!

  1. Download either the Stable Bits or Testing Bits of the converter package.
  2. Unzip the downloaded archive, and drag the convert_to_1p4 folder onto your Desktop - don't leave it in Downloads, it must be on the Desktop with that name - see Notes below.
  3. While the basic process is simple and safe (export - convert - import), I'd recommend following the step-by-step instructions in the README.pdf, because a) I wrote them just for you, b) there are a bunch of conversion options you might like, and c) the devil is in the details. OS X'ers can use the convenient AppleScript Conversion Helper to perform the conversion (Sierra requires version 1.09 or higher of the converter suite)

Want More Help?

For more help, I've created an Extra Help area with a few Videos and some Screenshots and Samples. Consider downloading and watching the short videos that show how the conversion process works:

  • Using the AppleScript_Conversion_Helper shows the convenient AppleScript helper (OS X only)
  • Running convert_to_1p4 on OS X shows the entire process from export to import

If you have any questions, please post them here. Be sure to mention:

  • your version of 1Password
  • the name and version of the password manager you are converting from
  • your OS and version: Windows or Mac OS X

Many users have benefited from remote help. If you find the conversion process too difficult, don't hesitate to ask for help. The process takes just a few minutes.

Comments and feedback are always welcome.

I Want New Stuff!

As I fix bugs, create new converters, or add new features, I'll update the Testing Bits. And I'll often direct users to those Testing Bits. When I'm good and ready, I'll promote the Testing Bits to Stable Bits.

Stable Bits Checksums and Version

MD5:     f05a3694194de0c25286382e1387b50c
SHA512:  b3026ddee53947df8d27abc3500ac06a584417da769fcbf56a047129c81068fa465e48cf79f93a1efc7944f62eec52a20f8031921256206c2a505fa2c8ea75a5

Happy Converting.

The conversion utility is not an AgileBits product, nor do I work for AgileBits. I'm a user like you who just loves 1Password.


  • Some browsers may automatically unzip the archive, leaving a folder named onepassword-utilities or onepassword-utilities-master in your Downloads area; other browsers may not, so you will need to unzip the file manually. On OS X, just double-click the file. On Windows, double-click the file, and the archive will open. Drag the folder onepassword-utilities to your Desktop, close the archive window. Finally move the folder inside onepassword-utilities (or onepassword-utilities-master) named convert_to_1p4 to your Desktop._
  • Starting with OS X Sierra, macOS has a more restrictive sandbox, and as such the AppleScript_Conversion_Helper was updated to work in that environment. This requires version 1.09 or higher of the conversion suite. You must move the convert_to_1p4 folder to your Desktop with exactly that name. Otherwise, the AppleScript_Conversion_Helper will fail since it is looking in that exact location.
  • Converting in versions of OS X prior to El Capitan are no longer tested nor supported - conversion may or may not work there.


  • RadRad 1Password Alumni

    Hi @MrC‌,

    Thanks for being such an awesome 1Password user :+1:



  • pxLpxL
    edited October 2014

    Hi, im new here and i wanted to use 1Password as my new password manager software on my PCs and my iPhone. Im currently using SafeWallet (i can share the install .exe if you need it because the website is broken from sbsh). I tested your converter but it only converts the xml files from the older SafeWallet versions. Would it be possible to add the newer version to so that i can uninstall SafeWallet and use 1Password ?

    your version of 1Password

    the name and version of the password manager you are converting from

    SafeWallet 2013/04/29

    your OS and version: Windows or Mac OS X

    Windows 7 - 64bit Ultimate

    Imported 0 cards Exported 0 total items

  • MrCMrC Community Moderator

    Hi @pxL,

    I just found version 3.0.7 for Windows, so let me take a look. Back shortly...

  • MrCMrC Community Moderator
    edited October 2014

    OK, so we have a problem. Since their sever is no longer online, and 3.0.7 requires a login before you can do anything, I cannot get a database created or imported. (This is a fatal flaw in any password management program, the requirement of a live external server, before you can do anything with your own data - horrible design).

    I have a 2.x test database that I can send to you, which you could import into a new database, and then you could create the export XML for me to work with. Contact me at my email address at the top of the script, and we'll go from there.

  • Hey @MrC‌,

    Thanks for that useful tool, i used it to convert my Keepass 2 database some months ago.

    I was thinking that maybe this post could be stickied? Or maybe AgileBits could mention it in the FAQ somewhere? It's not so easy to find because most people will use "Import" keyword while searching on the forum to see if they can import their databases from others products and will find nothing.

  • MrT1MrT1
    edited October 2014


    your tool is very much appreciated. The 1password company must love you.

    Unfortunately I did not get it to work. Please have a look when you find time.

    I use OS X Yosemite 10.10 (14A389)

    That's the log of the terminal:

     > Last login: Wed Oct 29 18:16:05 on ttys000
     Macintosh-11:~ Tom$ cd Desktop/onepassword-utilities/convert_to_1p4
     Macintosh-11:convert_to_1p4 Tom$ perl5.16 converter -v ../../pm_export.txt
     Can't locate Date/ in @INC (@INC contains: /opt/local/lib/perl5/site_perl/5.16.1/darwin-thread-multi-2level /opt/local/lib/perl5/site_perl/5.16.1 /opt/local/lib/perl5/vendor_perl/5.16.1/darwin-thread-multi-2level /opt/local/lib/perl5/vendor_perl/5.16.1 /opt/local/lib/perl5/5.16.1/darwin-thread-multi-2level /opt/local/lib/perl5/5.16.1 /opt/local/lib/perl5/site_perl /opt/local/lib/perl5/vendor_perl .) at Utils/ line 18.
     BEGIN failed--compilation aborted at Utils/ line 18.
     Compilation failed in require at line 15.
     BEGIN failed--compilation aborted at line 15 (#1)
         (F) You said to do (or require, or use) a file that couldn't be found.
         Perl looks for the file in all the locations mentioned in @INC, unless
         the file name included the full path to the file.  Perhaps you need
         to set the PERL5LIB or PERL5OPT environment variable to say where the
         extra library is, or maybe the script needs to add the library name
         to @INC.  Or maybe you just misspelled the name of the file.  See
         "require" in perlfunc and lib.
     > Uncaught exception from user code:
        Can't locate Date/ in @INC (@INC contains: /opt/local/lib/perl5/site_perl/5.16.1/darwin-thread-multi-2level /opt/local/lib/perl5/site_perl/5.16.1 /opt/local/lib/perl5/vendor_perl/5.16.1/darwin-thread-multi-2level /opt/local/lib/perl5/vendor_perl/5.16.1 /opt/local/lib/perl5/5.16.1/darwin-thread-multi-2level /opt/local/lib/perl5/5.16.1 /opt/local/lib/perl5/site_perl /opt/local/lib/perl5/vendor_perl .) at Utils/ line 18.
        BEGIN failed--compilation aborted at Utils/ line 18.
        Compilation failed in require at line 15.
        BEGIN failed--compilation aborted at line 15.
     Macintosh-11:convert_to_1p4 Tom$ 
  • MrCMrC Community Moderator
    edited October 2014

    Hi @MrT1,

    We'll get you going. The problem is that you are using MacPorts, or some other toolkit, and haven't install the necessary modules. You can either use the stock OS X perl5.16 by full path name (e.g. /usr/bin/perl5.16), or you can install the p5.16-date-calc module into your toolkit (e.g. for MacPorts: sudo port install p5.16-date-calc).

  • Hi
    thanks your the quick reply. Please have a look again because it is still not working.

    I installed Xcode and ran the

    sudo port install p5.16-date-calc

    now the error looks like this:

    Last login: Thu Oct 30 12:12:11 on ttys000

    Macintosh-14:~ Tom$ cd Desktop/onepassword-utilities/convert_to_1p4
    Macintosh-14:convert_to_1p4 Tom$ perl5.16 KeepassX -v ../../pm_export.txt
    Error: failed to load converter module 'KeepassX'
    Can't locate XML/ in @INC (@INC contains: /opt/local/lib/perl5/site_perl/5.16.1/darwin-thread-multi-2level /opt/local/lib/perl5/site_perl/5.16.1 /opt/local/lib/perl5/vendor_perl/5.16.1/darwin-thread-multi-2level /opt/local/lib/perl5/vendor_perl/5.16.1 /opt/local/lib/perl5/5.16.1/darwin-thread-multi-2level /opt/local/lib/perl5/5.16.1 /opt/local/lib/perl5/site_perl /opt/local/lib/perl5/vendor_perl .) at Converters/ line 22.
    BEGIN failed--compilation aborted at Converters/ line 22.
    Compilation failed in require at line 38.
    clipperz ewallet handysafe keepass2 keepassx keychain lastpass msecure safeincloud
    safewallet splashid
    specify one of the converters above on the command line to see complete options
    Macintosh-14:convert_to_1p4 Tom$

  • @MrC I have to say thank you from all of us for your crafty work on the converters. I hate to bug you but happen to already have converted a while ago from SafeWallet 2.x to 3.x. I exported the xml file to the pm_export.txt and tried the conversion anyway but it created the converted file and 0 records. I presume something has changed and am not sure if it is a lot of work to create a new converter for this type of export. I purchased the 1P for desktop and iDevices and hoping to get all my safewallet data in there. Thanks in advance. The file looks something like this for each card beginning at the top if that helps...

    Airtran Airways


  • Not working for me. Am using mSecure 3.1.1 (can't upgrade - long story) on Yosemite. When I try to export, I get a message saying that it cannot export to a .txt file - gives me the option of .csv or .txt.csv. I tried the latter. When running the script perl5.16 msecure -v ....\pm_export.txt.csv (which is what I assume I should run, replacing 'converter' with 'msecure' in the script), I get the message: Unable to open CSV file: ....pm_export.txt.csv
    No such file or directory.

    Help! I do not use terminal on a regular basis, but can follow instructions well enough, but so far this is not working for me. Thanks.

  • MrCMrC Community Moderator
    edited October 2014

    @MrT1: The p5.16-xml-xpath module will also need to be installed. To be clear, you don't need to use MacPorts, or install XCode. You just need to use the native Perl by full path /usr/bin/perl5.16 since all the modules are already included in OS X Yosemite. Once you start using stuff in your own self-installed /opt/local area, the process is manual and I've not documented how to do this.

    @stevem12t2‌: You're welcome. SafeWallet is now obsoleted, and I can no longer create an account (which is required to perform work in SafeWallet version 3). However, with the help of another user who converted my 2.x test data, I was able to update the converter to support the 3.0.7 Windows version (in English). It is in the _testing folder at the link at the top of this thread. Download the 1.01 test version of the converter and give it a try.

  • MrCMrC Community Moderator
    edited October 2014

    @TryingToImportTo1P‌: Select the CSV option and save the file to whatever name you want. Then, just use that name as you follow the instructions. The suffix name does not matter - I specified a generic filename and suffix to make writing instructions easier, and because of suffix hiding in OS X or Windows.

    In your command:

    perl5.16 msecure -v ....\pm_export.txt.csv

    the .... would be ../.. - note that the command above is missing a forward slash path separator (../.. means the current folder's grandparent -- in other words, two levels up).

  • It seems to have worked. Thanks!

  • MrT1MrT1
    edited October 2014

    please tell me what I have to write in terminal after

    cd Desktop/onepassword-utilities/convert_to_1p4

    where to put this path

    in this:
    perl5.16 KeepassX -v ../../pm_export.txt

  • MrCMrC Community Moderator

    How's this:

    /usr/bin/perl5.16 keepassx -v ../../pm_export.txt
  • Thanks. Unfortunately it does still not work.

    Unknown:~ Tom$ cd Desktop/onepassword-utilities/convert_to_1p4
    Unknown:convert_to_1p4 Tom$ /usr/bin/perl5.16 keepassx -v ../../pm_export.xml
    Imported 0 cards
    Exported 0 total items

    It created a zero byte file.

  • MrCMrC Community Moderator
    edited October 2014

    Can you confirm the password manager name, version, and OS? Some folks confuse KeePass 2 with KeepassX and the 0 records converted is a clue.

  • MrCMrC Community Moderator

    Sorry, I was away when I replied, and now as I look again, in part of your command or output, I see something about "Unknown". What is this:

    cd Desktop/onepassword-utilities/convert_to_1p4 Unknown:convert_to_1p4 Tom

  • Ugh I don't know really what that means.

    I did it again without an unkown.

    Last login: Thu Oct 30 22:13:01 on ttys000

    Macintosh-15:~ Tom$ cd Desktop/onepassword-utilities/convert_to_1p4
    Macintosh-15:convert_to_1p4 Tom$ /usr/bin/perl5.16 keepassx -v ../../pm_export.xml
    Imported 0 cards
    Exported 0 total items
    Macintosh-15:convert_to_1p4 Tom$

    I used Kypass to export the xml because my KeepassX 2.0 alpha 6 had no export option.
    OS X Yosemite 10.10

  • MrCMrC Community Moderator

    Let's take this offline, if you don't mind. Send me an email and I'll work you through it. My email address is at the top of the script.

  • MrCMrC Community Moderator

    Update: MrT1 and I worked through the issues. The database was a KeePass 2 database on Windows, then migrated to the Mac's KeePassX 2.0 alpha version. This version has no exporting capabilities, so MrT1 used the KyPass Companion app (from the Mac App Store) to import that database and then export it as XML. So the converter that was required was the KeePass2 converter, and not the KeepassX converter. Once we worked through these details and told convert_to_1p4 to use the keepass2 converter, the results:

    looking good so far :)
    ill try to import it

    Imported 685 cards

    Exported 7 note items

    Exported 678 login items

    Exported 685 total items




    Awesome - it worked.

  • Working well for me, too, using the SplashID converter. Thanks, @MrC! I wonder, however, if there's a deliberate reason why the data field SplashID calls "date modified" can't be mapped to 1pw's corresponding field (it is instead saved in the notes section). When I rename my pm_export.vid file as pm_export.csv and open with a spreadsheet program, it looks like the date data is consistently located in the same column (per category type, anyway).

    Is it because 1pw insists on keeping this field inviolately determined by system clock for some reason? I know this is true in the fronted UI, but would imagine it is more flexible with imports.

  • MrCMrC Community Moderator
    edited November 2015

    Hi @Newell.

    Good to hear of your success. As for the date modified field, the converters don't set this date as a rule, with the exception of Login items so that 1Password's Watchtower service has the opportunity to flag passwords that might need to be changed (the created date is set).

    It isn't clear to me how useful forcing a modified date is, since it isn't clear exactly what part of the record it refers to (the password field, or the entire record). So for the password managers that make the date available, the converter provides it in notes.

    If you really feel strongly about it, I could look into an option to set the date modified field for you. I don't recall if this will work or not (I think I tried it, but don't recall the outcome!).

  • Thanks so much MrC for helping me out here. A truly sharp tech-altruist :)

  • Hi MrC

    Great! One word:

    The note below didn't count for me. I'm on Yosemite and per15.16 gives me "command not found".

    It just worked fine with the normal command

    perl converter -v ../../pm_export.txt

    Yosemite note: replace the perl command above with perl5.16 (Yosemite ships with a newer version of Perl)

  • MrCMrC Community Moderator
    edited November 2014

    Who can argue with success!

  • No one i guess.

  • RusstyRussty
    edited November 2014

    MrC, Happy to work offline with you on this. I'm trying to convert from Keepass2 to 1Password but am running into some troubles. Here's my info:

    your version of 1Password - Windows
    the name and version of the password manager you are converting from - Keepass2 version 2.28
    your OS and version: Windows or Mac OS X - 64 bit Windows 8.1 Enterprise

    Thanks in advance for building a conversion utility and for supporting so many platforms!


  • MrCMrC Community Moderator

    Hello @Russty with two s's.

    What is the trouble? Feel free to post here or send details to my email address at the top of the script.

  • Thanks for the quick reply! I've installed perl 64 bit version using the link you provided in your .pdf instructions. Because I'm running windows I also figured out how to download the additional executables needed using the "ppm install xml-xpath" function. However when I use my cmd.exe window to navigate to the folders on my desktop and the run the perl script language I get the following:

    'perl' is not recognized as an internal or external command, operable program or batch file.

    I have perl installed in my c:\Perl64 folder on my drive and if I navigate to the Perl64\bin folder I can see the perl executable. What am I doing wrong? Thanks!


Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file