Incoming transactions show up in your Coinbase Exchange account almost instantly but show as Pending until there are enough network confirmations.
You can find the the corresponding minimum network confirmations through this link and inputting the asset you would like to check: https://api.exchange.coinbase.com/currencies/BTC
In this case, you can see that the "network_confirmations":2. This means that we require 2 confirmations.
Once a transaction is confirmed, it will show as Completed. This indicates that the transaction cannot be reversed and the funds can be withdrawn.
Coinbase runs its own blockchain nodes that communicate with the rest of the network. When you initiate a transaction, we broadcast it to the rest of the network so it can be confirmed. Our nodes may lose sync with the rest of the network for short periods of time, which can cause transactions to remain Pending longer than normal. The delay is usually under an hour and the transaction will eventually go through.
Occasionally, transactions are not accepted by the rest of the network (e.g. stale blocks). In this case, your transaction would not be confirmed on the blockchain and you will need to broadcast your transaction again.