Show when your idea already existed.
Stamp a design, a manuscript or lab notes before you share them.

Bitcoin timestamps / built on OpenTimestamps Protocol
Anchor the SHA-256 fingerprint of any file in a Bitcoin block. Your file never leaves your browser, and the proof works without us.
Don’t trust. Verify.
A record can be rewritten. A file can be replaced. The service you used can disappear.
A proof from Existence Anchor doesn’t depend on us. With your file and its .ots proof, anyone can check it against the Bitcoin blockchain.
How a stamp is made
Four steps, one chain of hashes anyone can follow. Your document never leaves your device.
Drop a file. Your browser computes its SHA-256 digest on your device and sends only that digest, plus a label if you type one. The file itself never reaches us.
Illustration. On Bitcoin a certificate is never instant: the timestamp servers decide when to anchor, and the block then needs 6 confirmations.
We add a random 16-byte nonce and hash again, so the timestamp servers never see your digest. You get a submission receipt at once: a receipt, not yet a certificate.
Illustration. On Bitcoin a certificate is never instant: the timestamp servers decide when to anchor, and the block then needs 6 confirmations.
Each timestamp server gathers many submissions into one Merkle tree, whose root is committed in a Bitcoin transaction. It is not instant, and the timestamp servers decide when.
Illustration. On Bitcoin a certificate is never instant: the timestamp servers decide when to anchor, and the block then needs 6 confirmations.
The block header must come byte for byte identical from two independent block explorers, carry enough proof of work, and sit at least 6 blocks deep. Only then is a certificate issued.
Illustration. On Bitcoin a certificate is never instant: the timestamp servers decide when to anchor, and the block then needs 6 confirmations.
The privacy boundary
We receive a digest, never the document. The timestamp servers receive even less.
We add a random 16-byte nonce and keep the digest, so we can issue your certificate.
Gathered with other submissions into one Merkle root, committed in one Bitcoin transaction.
A timestamp alone does not show who wrote a document or who owns it.
What you get
A receipt at once. A portable proof once the digest is anchored, and a certificate once it is anchored and your plan covers it, while we still store its files.
Receipts, certificates and proofs are private to your account. The public status link shows only a stamp’s state, its digest and when we received it.
What a certificate says
“The document with SHA-256 digest X existed no later than the time of Bitcoin block N (its timestamp T, ±~2 h miner tolerance), independently verifiable against the Bitcoin blockchain without trusting us.”
That sentence is all Bitcoin proves, and anyone can check it with the .ots file and a Bitcoin node, even if this service disappears. Who submitted the stamp and when we received it come from our own records: the certificate lists them apart, marked as stated by us.
What it does not say

WHAT BITCOIN PROVES – CHECKABLE BY ANYONE, WITHOUT TRUSTING US
The document with SHA-256 digest 03ba204e…6b6ab340 existed no later than the time of Bitcoin block 358391 (its timestamp 2015-05-28 15:41:18 UTC, ±~2 h miner tolerance), independently verifiable against the Bitcoin blockchain without trusting us.
What we assert – stated by us, from our records. Bitcoin does not prove these.
A sample in our layout, filled in with the hello-world proof that ships with the OpenTimestamps client, so every value on it can be recomputed. Not issued by us.
Where it helps
Anyone can change a file’s date. Nobody can move a stamp to an earlier Bitcoin block.
Stamp a design, a manuscript or lab notes before you share them.
Stamp the signed file. Later, anyone can check whether a copy put in front of them is that exact file.
Record that a dataset or a result existed before the paper went out.
Photos, audio, source files: stamp them before you send them to a client or a platform.
Stamp a ledger or a log export at the close of each period.
Stamp release artifacts straight from CI with an API key.
For developers
Hash locally, send the 64-character digest with an API key, and fetch the proof once the stamp is anchored and the certificate once it is issued. Your files never leave your systems.
OpenAPI documentThat is a stamp’s status. Its certificate is issued once the stamp is anchored and your plan covers it, while we still store the stamp’s files. API access comes with the Pro plan; each member creates their own keys and can revoke them at any time.
curl https://existenceanchor.com/api/v1/stamps \ -H "Authorization: Bearer $API_KEY" \ -H "Content-Type: application/json" \ -d '{ "digest": "03ba204e50d126e4674c005e04d82e84c21366780af1f43bd54a37816b6ab340", "label": "contract-49281" }'
{
"id": "Xq3v9LmT2aB7kPzR",
"status": "received",
"status_page": "/s/Xq3v9LmT2aB7kPzR"
}Check it without us
What a certificate states about Bitcoin can be checked with free, open tools. No account, and nothing from us.
That this exact file is committed in that Bitcoin block, and the block’s time. Not who wrote the file, and not that it didn’t exist earlier.
$ pip install opentimestamps-client $ sha256sum hello-world.txt 03ba204e50d126e4674c005e04d82e84c21366780af1f43bd54a37816b6ab340 hello-world.txt $ ots verify hello-world.txt.ots Assuming target filename is 'hello-world.txt' Success! Bitcoin block 358391 attests existence as of 2015-05-28 UTC
The stock OpenTimestamps client on its own hello-world example, run next to a Bitcoin Core node on a machine set to UTC. Nothing in it talks to us.
For the long term
Keep the file and its proof together. They don’t need your account, or ours.
The receipt, the certificate PDF and the .ots proof. The certificate and the proof also come together as one .zip.
The .ots file is a standard OpenTimestamps proof. The stock client and a Bitcoin node check it, with or without this service.
We store a stamp’s .ots proof and its certificate for 30 days from the stamp and, with a subscription, while it is current and 30 days after. A .ots you downloaded once the stamp was anchored keeps working after that.
Plans
Every plan anchors in Bitcoin and includes certificates. Each plan says how many stamps a month it covers, how long we store a stamp’s files, how many members it has and whether it includes API access.
Available soon
Available soon
A stamp beyond the monthly allowance is still anchored, and its .ots proof still verifies; only its certificate waits, and it is issued if the account’s plan comes to cover it while we still store the stamp’s files. A month is a calendar month in UTC.
The files we store for a stamp are its .ots proof and its certificate; we delete them after that time, together with the stamp’s label, and from then on no longer provide the stamp’s receipt. The rest of our record of the stamp stays, its digest included, and so does its public status page. Once a stamp is anchored the proof itself is permanent: a .ots downloaded then verifies without us. Subscribed means the subscription is active, in a trial, or retrying a failed payment.
Prices in US dollars (USD). Paid plans renew automatically each month or year until cancelled; we email a reminder before each renewal. The account’s admin can cancel at any time in Plan and billing, and the plan runs to the end of the period already paid for; a failed renewal payment is still retried, and if no retry succeeds, the plan ends after the last one. At checkout you ask for the service to start at once and so give up the 14-day right of withdrawal; payments are not refunded. Refunds and cancellation
Existence Anchor