How do you use the vanity name generator to look for an address?

Is there an estimate on how long it takes to find addresses of varying lengths and complexities?

1 Answer 1


Proper syntax for VanityGen is:

Usage: vanitygen [-vqrikNT] [-t <threads>] [-f <filename>|-] [<pattern>...]
Generates a bitcoin receiving address matching <pattern>, and outputs the
address and associated private key.  The private key may be stored in a safe
location or imported into a bitcoin client to spend any balance received on
the address.
By default, <pattern> is interpreted as an exact prefix.

-v            Verbose output
-q            Quiet output
-r            Use regular expression match instead of prefix
              (Feasibility of expression is not checked)
-i            Case-insensitive prefix search
-k            Keep pattern and continue search after finding a match
-N            Generate namecoin address
-T            Generate bitcoin testnet address
-X <version>  Generate address with the given version
-t <threads>  Set number of worker threads (Default: number of CPUs)
-f <file>     File containing list of patterns, one per line
              (Use "-" as the file name for stdin)
-o <file>     Write pattern matches to <file>
-s <file>     Seed random number generator from <file>

The important options to know are -i and -r which cause the search to be case-insensitive and use regex, repsectively. In its simplest format, you issue a command like:

vanitygen.exe 1david

Which tells vanity gen to look for an address with the exact prefix "1david." On a single core of my core i5 this runs at about 325,000 keys per second as shown by the status display (which does show a time estimation.):

[324.43 Kkey/s][total 15166208][Prob 0.1%][50% in 9.1h]

Using the -i option drastically decreases generation time. vanitygen.exe -i 1david produced the following results in just a few seconds:

Difficulty: 36384905
Pattern: 1david
Address: 1DAVid3iW7XhDBzdoj8FbnaSaqWCjeTgUP
Privkey: 5JvtXtpUbwbNNqRoQjF3w2nyXHhphJk6LX1pWkPYEkBr4nnnBeL

The -r option allows the specification of a regex value instead of the default pattern option. If, for example, I demanded that my address contain all lowercase letters but I don't care if the "D" in "David" is uppercase or not, I could use vanitygen.exe -r 1[Dd]avid. One downside to specifying a regex prefix is that you will not be given any estimated time or probability data since such calculations are not as trivial as matching a simple prefix.

The more specific your matching criteria (and the longer the pattern) the longer it will take to generate your address(es). This can be sped up considerably if you have an ATI/AMD video card since there is also an OpenCL version of VanityGen which can try millions of keys per second on a decent GPU.

  • 2
    Is there a Mac version of vanity gen? Sep 7, 2011 at 19:01
  • 3
    I don't believe the author of VanityGen provides precompiled Mac binaries, but the code does include a MakeFile for OSX so you should be able to compile it: github.com/samr7/vanitygen Sep 7, 2011 at 19:16
  • FYI: There is also a version of vanitygen supporting Litecoin at github.com/dasher/vanitygen available!
    – q9f
    Aug 22, 2013 at 13:36
  • 1
    @qdoe vanitygen supports any bitcoin-based address as long as you know which number to put to the -x switch, e.g. primecoin via -x 23 Amyvanity Jan 27, 2014 at 8:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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