Skip to content

Tracking accounts & balances

To manage Accounts & Balances (Blockchain Balances, Exchange Balances, and Manual Balances including fiat) you need to visit the Accounts & Balances section from the left sidebar.

Accounts & Balances page

Adding and Removing Blockchain Accounts

Rotki allows to track balances of blockchain accounts.

For now, the following chains are supported in Rotki (and the list will be growing as we add more chains in the future):

  • Ethereum
  • Bitcoin
  • Bitcoin Cash
  • Kusuma
  • Avalanche
  • Polkadot
  • Optimism
  • Polygon PoS
  • Arbitrum One
  • Base
  • Gnosis
  • Scroll
  • zkSync Lite

To add or modify an account navigate to the Blockchain Balances sub-page and click the "Add Account" button on the top right. Now choose the blockchain on which you want to add an account. Then type or paste the address in the "Account" textbox and press the "Save" Button. Note that you can add multiple accounts if you click the "Add multiple addresses" checkbox and provide a comma separated list of addresses.

Add a blockchain account

To stop tracking one or more accounts you can check the corresponding box in the accounts table and click the "Delete" button.

Delete a blockchain account

EVM Chains

If the selected chain is an EVM chain you will see Add to all supported EVM chains checkbox. It is checked by default and it means that rotki will try to add the address for all EVM chains. If the address is a contract in Ethereum mainnet it will only be added to Ethereum. Otherwise for each chain rotki will check whether the address had any activity there and will add only if it has at least one transaction. If you uncheck the checkbox, then the address will only be added to the selected chain.

If an EVM account also contains tracked tokens you can click on the arrow under Actions in order to expand its view and show the balance breakdown for the account over all assets it holds.

Bitcoin chains

For Bitcoin/Bitcoin Cash you can add addresses manually or let rotki discover them using an xpub. Using an xpub rotki can locally generate your addresses and query the Bitcoin/Bitcoin Cash blockchain for each one of them until it finds unused addresses.

There are also different types of xpubs, depending on the capabilities of the wallet used to generate them.

  • P2PKH: This is called legacy. Addresses generated by such an xpub have "1" as a prefix.
  • P2SH-P2WPKH: This is called segwit. Addresses generated by such an xpub have "3" as a prefix.
  • WPKH: This is called native segwit. Addresses generated by such an xpub have "bc1" as a prefix.
  • P2TR: This is called taproot. Addresses generated by such an xpub have "bc1p" as a prefix.

You will need to know what type of xpub your bitcoin wallet generates in order to choose the correct type at the dropdown menu. If your wallet generates an xpub prefixed with ypub or an xpub prefix with zpub rotki can deduce the type for you automatically. If you are using a ledger hardware wallet you can obtain an xpub by following this guide.

An xpub does not allow spending your coins but provides information about your wallet. In rotki this information is stored safely encrypted in your local database.

Note: Bitcoin Cash(BCH) only supports P2PKH & P2SH_P2WPKH xpubs.

Add a bitcoin account using XPUB

ENS names resolution

Rotki automatically resolves ens name and ens avatar for every evm address that has ens name set in ethereum mainnet. If there is a primary ens name specified for an address, this name will be shown instead of a raw blockchain address across the app. You can find the blockchain address by hovering the mouse over the ens name. If an ens avatar is set, it will be shown instead of the address blockie.

Example of resolving an ens name

Token detection

For EVM accounts, it is possible to trigger the process of detecting tokens before refreshing the balances. There are several ways to do that:

Refresh all accounts tokens

  1. To re-detect tokens for all EVM accounts in all chains, go to the dashboard and toggle the arrow here. You can change the default behavior of the refresh button to Re-detect tokens and refresh balances and then click the refresh button.

Refresh particular accounts tokens

  1. To re-detect tokens for all addresses of one EVM chain, click Re-detect tokens in the particular chain balance table.

  2. To re-detect tokens for only one account, click the refresh button in the corresponding row.

Checking Exchange Balances

You can check all of the asset balances that you have in each connected exchange in the "Exchange Balances" sub-page. Clicking the "Add exchange" button takes you to the API Keys page where you can manage your exchange connections (see Adding an exchange).

Exchange Balance

Adding Manual Balances

With rotki you can also add balances/accounts for any type of asset and location that may not be supported at the moment. For example real estate, equity holdings or holdings in a not yet supported blockchain or exchange.

To add or modify a manually tracked balance navigate to the Manual Balances sub-page and click the "Add Manual Balance" button on the top right. There choose the asset from the dropdown menu, input a unique label for the account, decorate it with any number of tags and choose an amount and location.

You can also filter the manual balances by location, name or asset.

The manually tracked balances

Adding/Editing Labels and tags

You can edit any of your blockchain accounts and add a label. The label is unique to the account and will show up in the accounts tables instead of the address. You will still be able to see the address if you hover over the label in the tables.

Add a label and create a tag

By pressing the edit button for the account you can also add tags to the blockchain account. If you want to create a new tag or edit an existing one you can open the tag manager and choose the name, description and colors of the tag.

Filtering by tags

You can filter the tables by a combination of tags.

Filter the accounts by tag

Simply add the tags you wish to filter by in the filter textbox above the tables.

Loopring balances

From the balances section you can quickly get an overview of the accounts having balances in Loopring and what assets these accounts hold.

Loopring balances detailed per address

NFTs

Rotki provides an NFT gallery where you can view the NFTs owned by your accounts.

NFT Gallery

You have an overview of the total value of your NFTs in the application dashboard, on the NFTs table.

NFT Value Dashboard

An estimation of the value of the NFTs you own is counted into your total net worth. The estimation strategy is currently the maximum of either the floor price of the collection or the last sale of the NFT. If a manual price has been given this is always preferred.

NFT Value Dashboard

If a price cannot be found for an NFT asset or if you want to change the calculated price estimate you can easily set the price for an NFT asset manually. You can do this by either clicking on the > button in the NFTs table in the dashboard or by going to Blockchains & Accounts → Non Fungible balances. And then click on the pen icon for the NFT you are interested in.

For privacy concerns, it is possible to allow all or only a certain list of domains for images rendered, this can be done here by clicking on the icon highlighted below.

More details here Critical Privacy Vulnerability: Getting Exposed by MetaMask

NFT Image Render Settings Toggle

The configuration menu:

NFT Image Render Settings

Highlight details:

  1. Link to blog post about image rendering and privacy.
  2. Option to allow all NFT images to be rendered.
  3. Option to allow only whitelisted domains.
  4. If only whitelist, input list of allowed domains.
  5. Save button.

NFT Image Render Settings

This will enable image rendering of only whitelisted NFT domains.

ETH2 Staking

There are two ways to track ETH2 Staking. The first is by adding tracking the account of an ETH account that deposited the ETH for the validator. This will auto-detect any associated validators with the ETH1 address and it will start tracking them. The second way is by adding a validator using the Add account button in the Blockchain Balances → Accounts & Balances page. It can be added using its public key, its index or both of them for a faster query. Finally it is also possible to customize the proportion of the validator owned for users who share one validator with more people.

Track an ETH2 validator

After adding a new validator you will see the list of balances for each of these validators.

ETH2 validator balances

If you are an ETH2 staker you can see the total value earned both in the current ETH price (2) but also counting the price of the daily payouts of ETH2 staking (3).

See ETH2 value earned

You can see the summary of how much ETH was earned each day, on the daily stats section.

See ETH2 value earned

Finally this can also be taken into account in the profit/loss report for any given period of time and also exported via CSV to a spreadsheet.

See ETH2 value earned

Liquity Staking

If you stake LQTY in the protocol you can see stability pool deposits, staked amount, and the stake events.

See your Liquity staking gains

On the left side, we display information for your current deposited amount of LUSD in the stability pool along with the ETH and LQTY rewards that you haven't claimed yet. On the right side, we display the staked LQTY and the ETH and LUSD that are available to claim.

The Liquity statistics are calculated using the queried events and you might need to wait for some time until all the events are queried to get the final values. The values in terms of USD can be displayed using prices at the moment of the different events (historical) or using prices at the present (current).

  • Total Gains Stability Pool: This is the value of Ether and LQTY claimed from the stability pool.
  • Total Deposited Stability Pool: This is the value of LUSD deposited in the stability pool.
  • Total Withdrawn Stability Pool: This is the value of LUSD withdrawn from the stability pool.
  • Stability Pool Gains: A breakdown of the gains already claimed from the pool.
  • Estimated PnL: This value represents your returns from the stability pool after losing LUSD in exchange for ETH and LQTY. For more information on how the stability pool works check the Liquity docs. This amount is calculated in rotki as follows:
A = Total Deposited Stability Pool - Total Withdrawn Stability Pool
LG = Claimed Liquity gains in current price.
R = Not claimed rewards in current price.
B = Total Gains Stability Pool + LG + R
C = (A - Current deposited amount) in current price
PnL = B - C

For LQTY staking we display the claimed rewards.

Liquity Statistics

Kraken Staking

If you stake on Kraken you can see your gains, and events in the various staked assets.

See your Kraken staking gains

Airdrops

Rotki can detect some airdrops for you

rotki airdrops detection

The list of currently supported airdrops is:

  • Uniswap
  • 1INCH
  • Tornado
  • Cornichon
  • Grain
  • Furocombo
  • Lido
  • Curve
  • Convex
  • Shapeshift
  • ENS
  • ParaSwap
  • Saddle finance
  • Cow
  • Diva
  • Shutter
  • Starknet
  • Optimism 4
  • Degen 2
  • Omni
  • Eigen token

Snapshots

The application will automatically snapshot the information about balances from all tracked sources to disk upon login every 24 hours by default (this interval is configurable). This information is saved directly to your local database. You can manually initiate a snapshot by clicking the arrow down near the graph and then selecting Force Save.

Force snapshots saves

Snapshots won't be saved if there is any error querying information for external sources. If you want to force the snapshot to be saved when an external source is reporting an error you can select the option Ignore Errors.

It is possible to remove balance snapshots from the history or edit them in case the information is not correct or needs to be modified. To do so click on a snapshot's point at the dashboard's net value graph and this will open a menu.

Delete snapshot

Clicking on delete will remove the saved information for that snapshot. The same menu allows exporting the information of the balance snapshot to an external file. Four files are then generated, two meant to be used if you want to import information about snapshots later and the other 2 have the same information in a human readable format to be used in accounting. balances_snapshot contains information about the balances at the snapshot time for all the different assets rotki knew you had and location_data_snapshot has the value per location for the same assets.

If you choose to edit the snapshot you can modify the values per asset and location as shown in the screenshot

Edit snapshot

Finally information about snapshots can be imported back into the app using the files you exported with the suffix _import. To import them use the import functionality by clicking on the Arrow down button near the chart and then click Import.

Import snapshots information