Surprised this one hasn't been asked yet.

But how / what is the recommended best practice for shutting down bitcoind ?

Right now I'm manually killing the process with either sudo kill {pid} or if this is failing (like just now) using sudo pkill -9 -f bitcoind

7 Answers 7


EDIT: This answer is deprecated, it applied to an old version of the bitcoind client. Apparently RPC functionality is now removed. Please look at the other answers instead.

I guess using bitcoind stop. I recommend this approach as killing the process could end you up with a corrupted database, from what I have experienced. Use bitcoind --help for all options and bitcoind help for all JSON-RPC commands.

  • Good thinking. Missed that.
    – ManreeRist
    Oct 11, 2013 at 19:11
  • 12
    This doesn't work anymore: Error: Command line contains unexpected token 'stop', see bitcoind -h for a list of options.. The correct way to stop bitcoind is bitcoin-cli-stop command (see the other answer with higher vote count).
    – iaforek
    Oct 23, 2017 at 8:10
  • 3
    The correct way, as shown by Aliakbar Ahmadi and confirmed by Jonathan Cross is bitcoin-cli stop. Note the last space as opposed to a hyphen. Apr 17, 2020 at 18:44

I'm not sure if bitcoind stop still works as RPC with newer releases, since somewhere in help sections it says RPC funcionality removed from bitcoind.

Try bitcoin-cli stop.

  • 6
    Confirmed bitcoin-cli stop works in version 11. Sep 17, 2015 at 12:42
  • 2
    Still works in 2017! Use this.
    – iaforek
    Oct 23, 2017 at 8:14
  • does not work... I did ./xxxcoin-cli stop but nothing happen after that and ./xxxcoind also does not stopped.
    – creator
    Feb 21, 2018 at 12:29
  • 1
    Yes, it still works.
    – Ken Sharp
    Aug 1, 2018 at 23:17
  • Does not work with my setup. I think first of all to be able to use bitcoin-cli you have to start bitcoind with option server=1. I did this and still bitcoin-cli getinfo is returning an error. So I suspect bitcoin-cli does not work properly. I have a process in top that is called bitcoin-init. I am not sure if this is the right process that should be active after I started bitcoind or if this some sort of initialisation process and since it uses 100% of my Raspberry CPU it might as well hang and this might be the root of the problem. I appreciate any input.
    – bomben
    Aug 28, 2019 at 10:18

if you started it using 'bitcoind -daemon' and you are using version 10 or above, then use 'bitcoin-cli stop'

  • Does not work for me. What could be the reason? Does the daemon need to be started as a server? Is bitcoin-init an initialisation process to bitcoind? Because that is my process in top.
    – bomben
    Aug 28, 2019 at 10:22

In my case, It works that ./bitcoin-cli -regtest stop


Make sure you specify the same options that you normally use when running bitcoin, for example, if you use a different datadir:

cd C:\Program Files\Bitcoin\daemon
bitcoin-cli -datadir=C:\Bitcoin stop

This worked for me:

bitcoin-cli -rpcuser=[username] -rpcpassword=[password] -rpcconnect=[ip] stop


If using testnet, try ./bitcoin-cli -testnet stop

  • 1
    ./bitcoin-cli stop is enough
    – 0xb10c
    Aug 3, 2018 at 8:51
  • 1
    I don't know why this correct and the only working answer when on testnet was down-voted. ./bitcoin-cli stop is definitely not enough when running 0.18rc on testnet.
    – Tony
    Mar 14, 2019 at 5:30
  • 2
    It's only enough if you specifically added testnet=1 to your bitcoin.conf. Otherwise the default is for mainnet!
    – karimkorun
    Jan 16, 2020 at 16:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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