This tool converts numbers and data from any base.

Most converters seem to be limited to base-64 at the very most, and usually limited as low as base-36.
Here you can enter your own character set and convert whatever you like.

The tool is rather advanced though, so here's a tutorial to convert from base-10 (decimal) to base-16 (hexadecimal):
1. Make sure that the first base field (the from-base field) contains the number 10.
2. Make sure that the second base field (the to-base field) contains the number 16.
3. Make sure that the character sets are correct. There are two rules for this:
   a. To convert from base X, you will need X characters in the from-character set field. In the case of base-10, 0 through 9.
      Same goes for the to-character set field of course.
      If there are more than X characters, that's fine.
   b. All characters used in from-data will need to occur in from-character set. If you use the letter b in from-data,
      then from-character set must have the letter b somewhere.
4. Enter 9001 at the first data field (the from-data field).

The result will automatically appear in the second data field (the to-data field).

Protip: Character set fields accept any character as recognised in a Javascript string.
For example, \n will represent ASCII code 10, and \u000c represents ASCII 13.
From Data:
Base:
Character set:
Presets: Hexadecimal - base64 - ASCII

To Data:
Base:
Character set:
Use the from-character set.