5

Is there any tool available that can tell me the balance of bitcoin address on specific date?

Like, what was the balance of 1XXXXXX on Jan 1st 2016?

Looked up insight: seems not available.

3

Blockchain.info does provide this information on their explorer.

Just update the address property in the below with the bitcoin address you are interested in.

https://blockchain.info/charts/balance?address=SOME_BTC_ADDRESS

The default provides balance(available UTXOs) based on time when a transaction took place over last 365 days, there's a button on the bottom to change it to a different time frame.

Or if you're looking for JSON data you can add &format=json to the end and it will respond with two co-ordinates.

X is the unix time.
Y is the balance of the address at the corresponding unix time.

For example https://blockchain.info/charts/balance?address=1BitcoinEaterAddressDontSendf59kuE&format=json responds with the balance where a transaction took place for last 365 days.

{"values" : [{ "x" : 1483998356, "y" : 13.12051013},{ "x" : 1482362680, "y" :
 13.11998881},{ "x" : 1480453296, "y" : 13.11997881},{ "x" : 1480217126, "y" :
 13.11987875},{ "x" : 1477953227, "y" : 13.11982404},{ "x" : 1476234141, "y" :
 13.11979674},{ "x" : 1472565544, "y" : 13.11951574},{ "x" : 1470980969, "y" :
 13.11751574},{ "x" : 1470680539, "y" : 13.11748574},{ "x" : 1470675058, "y" :
 13.11648574},{ "x" : 1470260254, "y" : 13.11638574},{ "x" : 1470246802, "y" :
 13.11581574},{ "x" : 1470230981, "y" : 13.11571574},{ "x" : 1466255060, "y" :
 3.11571574},{ "x" : 1465951449, "y" : 2.11571574},{ "x" : 1465950879, "y" :
 2.11561574},{ "x" : 1463520753, "y" : 2.11551574},{ "x" : 1463304458, "y" :
 2.11548419},{ "x" : 1462364446, "y" : 2.10759509},{ "x" : 1461775576, "y" :
 2.10747509},{ "x" : 1459038191, "y" : 2.10744509},{ "x" : 1459038191, "y" :
 2.10739079},{ "x" : 1459038191, "y" : 2.10733649},{ "x" : 1457638515, "y" : 
2.10728219},{ "x" : 1457590678, "y" : 2.10727673},{ "x" : 1457365022, "y" : 
2.10687673},{ "x" : 1453607377, "y" : 2.10637673},{ "x" : 1453607377, "y" : 
2.10632243},{ "x" : 1452802805, "y" : 2.10626813}]}
1

Note: I'm not sure if that is the easiest way to approach your problem, I was just curious how I'd approach it myself and the below is what I came up with.


"Balances" of addresses are an abstraction and don't exist as such in Bitcoin. Actually, spendable funds exist in form of Unspent Transaction Outputs (UTXO).

UTXO are (as the name suggests) created by transactions, so there is a clear point in time when they came into existence, namely the block which confirmed the transaction.

They also get invalidated at a clearly defined point in time which is when they get used as an input.

You could now use this information to access a blockchain explorer's API, which in at least one instance offer a call to request all transactions pertaining to one address. These transactions you can now parse for when UTXO associated with this address were created and when they got spent.

Meanwhile, you'd look up the corresponding block height for the time that you're interested in, which in combination with the above information gives you the "balance of an address" at a given time.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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