<!--
{
  "availability" : [

  ],
  "documentType" : "symbol",
  "framework" : "BitcoinKernel",
  "identifier" : "/documentation/BitcoinKernel/BlockSource/bestTip()",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "BitcoinKernel"
    ],
    "preciseIdentifier" : "s:13BitcoinKernel11BlockSourceP7bestTipAA0cF0VyYaKF"
  },
  "title" : "bestTip()"
}
-->

# bestTip()

The source’s current best tip — the highest validated block the
source knows.

```
func bestTip() async throws -> BlockTip
```

## Return Value

A [`BlockTip`](/documentation/BitcoinKernel/BlockTip) describing the remote best block. The
returned tip’s [`timestamp`](/documentation/BitcoinKernel/BlockTip/timestamp) may be `nil` depending on
what the source can cheaply provide.

## Discussion

Called repeatedly by the sync engine: once at the start of a sync run
(to determine the target), and again each time the local chainstate
reaches the remote tip (to catch source-side growth or reorgs).

> Throws: ``doc://BitcoinKernel/documentation/BitcoinKernel/BlockSourceError`` on transport or parse failures.