Hey there.
Is there any method to determine the precise time when a transaction got confirmed?
Transaction Confirmation Timing
17 replies 379 views
stack_2017Senior Member
Posts: 201 · Reputation: 1389
#2Jan 24, 2018, 10:47 PM
Yes, of course. Which block explorer are you using? Blockchair should show you the confirmation time.
Blockchain, on the other hand, shows when the transaction was broadcast and not confirmed. But if you click on the block on which the transaction was confirmed, you will see when that block was mined and that would also represent the first confirmation time.
Input the txid on a blockchain explorer like:
https://blockchair.com
https://blockstream.info/
https://mempool.space/
https://www.blockchain.com/explorer/assets/btc
Edit:
If the transaction is for you and on your wallet, you can see the day and time on some wallets, like Electrum, Bluewallet and many other bitcoin wallets.
bridge2018Full Member
Posts: 50 · Reputation: 405
#4Jan 27, 2018, 09:46 AM
Its simple you can use the txid of your transaction on blockhain explorer then you can find information about which block the TX was included and at what time too under timestamp.
It is true that he can use the txid to know the time the transaction got confirmed, but no need of looking for the block the transaction was mined, it is of no need and pointless. Once he paste the txid on a bitcoin blockchain explorer, he will see the time.
It is also worth knowing that Tor can be used to access any of the explorer for anonymity reason.
I'm looking at blockchain, but I don't see.
https://www.blockchain.com/
Can you give me an example?
humbleledgerLegendary
Posts: 1027 · Reputation: 6554
#7Jan 27, 2018, 08:45 PM
Actually: no! There is no "exact" time in Bitcoin, there's a "block time" and a "received by node time", but those can vary between nodes. Sometimes the previous block has a later time than the current block.
This is of course a pretty good estimate most of the time.
Look up a transaction, check on the left:
Just make sure that you aren't looking for the time of broadcast. Not all explore give you the time of broadcast of the transsaction.
most of the blockchan explorer give you the time when the block was confirmed
3 days ago Sep 22, 2023 6:13 PM UTC
Is that the confirmation time?
paul.stakeHero Member
Posts: 651 · Reputation: 3798
#10Jan 28, 2018, 05:01 AM
There is no such a thing as "time of broadcast". In a peer-to-peer network some nodes receive messages later than others. This is why Bitcoin needed a timestamp server. So that time will be determined by one node; not any, but the one which worked more.
Yes. If you check block 808877, you can verify it yourself. It was mined in 2023-09-22 18:13 UTC.
I agree with you, but seems that you didn't bother in read what i write there... anyway.
OK.
Thank you very much.
bridge2018Full Member
Posts: 50 · Reputation: 405
#13Jan 28, 2018, 04:53 PM
Yes, it's the time that the TX received its first confirmation.
In practice if a transaction is included in a block, it is most definitely valid because of the financial incentive miners have to make absolutely sure they are not creating an invalid block and lose the reward for their work.
But technically a confirmed transaction can be invalid, the only way to know if a transaction is valid is if your node has validated it.
This may sound petty, but it's not necessarily the time the block was mined but rather the timestamp the miner has chosen to put into the blockheader of block 808877. Both times must not be the same and are allowed to differ by quite some amount. According to one of my nodes and unknown propagation delay of the node's network mining time and block header timestamp seem to be pretty close for block 808877:
paul.stakeHero Member
Posts: 651 · Reputation: 3798
#16Jan 30, 2018, 03:14 AM
Very correct. If we want to be specific, the block time must be greater or equal with the median time of the previous 11 blocks + 1 second, and less than the adjusted network time + 2 hours.
These are the particular lines in validation.cpp that check it:
- GetMedianTimePast() can be found in chain.h, and it returns the median time of the past 11 blocks.
- MAX_FUTURE_BLOCK_TIME can also be found in chain.h, and it is equal with 7200 seconds (2 * 60 * 60).
Mine received it 2 seconds after yours. You could be the one who sent it to me.
hodler2019Legendary
Posts: 2182 · Reputation: 12913
#17Jan 30, 2018, 04:22 AM
Yeah sometimes the time stamp can be off by 1 to 90 seconds. So if you really poke around on a blocks reported time you may find small time differences. I have posted on this a few times. here and there on this site.
It's the approximate time the transaction has been added to a block, but since any node can assemble the transactions into a block at any time, it is not quite reliable.
In the replies above, you can see the "block time" the time when the transaction was added to the block (in seconds since epoch I think). However, actually converting it to a human-readable value is a different story, because of time zones, daylight-saving times, leap-seconds, and so on.