Most currencies, whether cryptocurrency or fiat, have unique codes (e.g. "BTC", "LTC") across all wallets and exchanges.
We enforce this uniqueness in CryptFolio; we do not permit any of our tracked currencies to share a single currency code reference.
For exchanges that use differing internal codes (e.g. Kraken uses XXBT for Bitcoin BTC), CryptFolio maintains an internal code-to-currency mapping.
We also enforce that all codes must be lowercase. Special characters and/or UTF-8 codes (e.g. emoji) are fine.
In the case of a conflicting or different currency code, our policies are:
- An existing ISO4217 fiat code has priority over any cryptocurrency
As at 3 February 2018, you can use the following cryptocurrencies to pay for your CryptFolio account, thanks to Coinpayments.net:
- BTC Bitcoin
- LTC Litecoin
- BCH Bitcoin Cash
- BLK BlackCoin
- DASH Dash
- DCR Decred
- DGB DigiByte
- DOGE Dogecoin
- ETC Ethereum Classic
- ETH Ethereum
- EXP Expanse
- GAME GameCredits
- LSK Lisk
- POT PotCoin
- SYS SysCoin 2.1
- VTC Vertcoin
- WAVES Waves
- XVG Verge
Alternatively, you can use your credit card to pay for your CryptFolio account, thanks to Stripe. We support:
- American Express
When you load up your portfolio for the first time, you may see some of your charts display as "Calculating...":
This message is displayed when the chart needs to calculate some data asynchronously on the server. You can safely wait and the chart will display the results once the calculation has completed.
Why does CryptFolio process reports asynchronously?
To satisfy the rate limit requirements of the external services we use to pull data, and to prevent sudden spikes in demand crashing the frontend servers, CryptFolio does not download balances and process reports on request.
Rather, these jobs are submitted to
Other than the plan limits imposed by your current subscription level, all accounts in CryptFolio have the following limits:
- Minimum account, address or offset balance stored (balance, transaction or history): 1e-9 per currency, up to 9 decimal places
- Maximum account, address or offset balance stored (balance, transaction or history): 1e+9 per currency, up to 9 decimal places
- Minimum portfolio summary stored (balance, transaction or history): 1e-9 per currency, up to 9 decimal places
- Maximum portfolio summary stored (balance, transaction or history): 1e+9 per currency, up to 9 decimal places
(This can mean that, in some cases, you may not get
The main CryptFolio platform is not designed to support trading within the app; this is a strategic decision.
If we were to support any form of automated trading, we would need to comply with many more international laws and regulations:
- Under New Zealand law we would have to register as a Financial Service Provider;
- We would need to register under similar acts and regulations within each international market; and
- As a user, you would need to submit AML/KYC documentation for every CryptFolio account.
We would also need to stop following our read-only API policy, which could expose your portfolio to
Not through CryptFolio.
Because the only data that you provide to CryptFolio are public addresses, and read-only APIs, it should not be possible for anyone to perform any trade or transaction with any of your currencies - as long as your account providers maintain their security as well.
For more information, check out our Security Policies.
On CryptFolio, we only support addresses, account and APIs that permit read-only functionality.
Read-only means that with all of the data that you provide to CryptFolio, it should not be possible for anyone to perform any trade, transaction, or withdrawal with any of your currencies - as long as your account providers maintain their security as well.
This also means that in the unlikely case of somebody gaining access to your account, they won't be able to use the information you provide in CryptFolio to make any trade, transaction, or withdrawal.
When you decide to add an API key to
Hi. I have been desperately looking for a non-phone app Cryptocurrency portfolio tracker that allows the import of previous trades from major exchanges. I don't see where CSV files from those exchanges can be uploaded, so I created the necessary API keys in hopes they would work. My Bittrex API is still "loading" after 15 hours, but since I'm just trying to test on a free account this may be normal. I have noticed that when I view the transactions that are already uploaded from Binance and Coinbase, the screen seems to be limited to only the most recent 50
An address is a unique identifier, generally between 24-64 characters, that represents a possible destination for a cryptocurrency transaction. It is similar to a bank account number, in that you can have many bank accounts – each with their own balances and transactions.
Addresses can be generated for free with your wallet software, and there is no practical limit to the number of addresses that you can control.
Often different currencies will differentiate their addresses with a different leading character, for example:
For more information, check out these resources:
- Address on the Bitcoin Wiki
- Getting started with Bitcoin (Bitcoin.org)
An exchange is a service, usually a website, where users can trade their assets. Sometimes these trades are completed by matching open "buy" orders to open "sell" orders, and sometimes this is done by a service for a predetermined price.
For example, you can use an exchange to trade your Bitcoin (BTC) for Litecoin (LTC), or vice versa. On some exchanges, you can exchange cryptocurrency for fiat currencies; for example, trading your US dollars (USD) for Bitcoin (BTC).
Often you will be restricted to opening a single account on each exchange. Most exchanges will provide you with at least one
A mining pool is a service where many users "pool" their resources together to "mine" for cryptocurrencies.
Most cryptocurrencies are so difficult to solve ("mining", which is essentially solving the equations necessary to secure the blockchain and include its transactions) that for smaller participants, it's more realistic to share their resources together, and then for the mining pool to split the rewards out based on the effort each participant executed.
Many mining pools will also provide cryptocurrency wallets for their users, to allow you to accumulate your earnings out over many different blocks and send the rewards in a single
In the context of CryptFolio, a fixed amount is a single set of currencies, each with their own balances.
For example, you might wish to create a fixed amount for savings that you are holding on a device that you don't wish to disclose, by creating the following record in your portfolio:
CryptFolio assumes that these balances have always been available, so there are no transactions involved. You can have multiple fixed amounts per portfolio, each with different currencies.
In the future, CryptFolio will also support uploading arbitrary transactions and multiple balances per transaction.
An external API is a third-party service which provides balances and/or transaction data, that can be used in other applications. API stands for "Application Programming Interface".
Using external APIs, you can develop your own web services to expose your financial data, without needing to provide CryptFolio with any of your own credentials.
For example, you could specify an external API "https://example.com/my_btc_balance", which returns the number "1.0" - signifying that you want to add 1.0 BTC to your portfolio.
The technical specifications for the range of supported External API formats is now available.
We do not suggest that you use an IP address filter for API keys that you create and share with CryptFolio.
At any time we may change the IP address(es) of our jobs servers, and in such a situation you will need to manually log into each of your external accounts and change the IP address associated to that API key. Since we only use read-only API keys, you should not be exposed to any financial risk when we change our job server IP addresses.
Currently we have one job server IP, and you may use this to restrict API