# Exponential Layers

Bitcoin Lightning Network Explorer and Analytics

Exponential Layers offers Bitcoin lightning network analytics to help answer questions such as:

* What is the total active capacity on the Bitcoin Lightning Network?
* How many channels and nodes are active on the network?
* How has Lightning Network data changed over time?

And also more specific node and channel requests such as:

* What kind of fees and routing policies are in place for nodes on the network?
* Where can I see my node and channel details?
* Can I setup notifications for channel opens/closes to a node?

If these questions (or others) are things you have identified as challenges (or already have solutions for), [please get in touch](https://www.exponentiallayers.com/).

## Getting Started

The Exponential Layers [Lightning Network Explorer](https://app.exponentiallayers.com/) offers many options for analyzing the network.  The following guides break down the network, from analytics as a whole, to node and channel specifics.

### Lightning Network Concepts

{% content-ref url="/pages/lk3ln56CiZeaDwXxFm2U" %}
[Lightning Network Overview](/lightning-network-concepts/lightning-network-overview)
{% endcontent-ref %}

{% content-ref url="/pages/5ZfvACefIkkm6V87Sos3" %}
[Lightning Nodes](/lightning-network-concepts/lightning-nodes)
{% endcontent-ref %}

{% content-ref url="/pages/gFAuDpXnKZbah56OSlqI" %}
[Lightning Channels and Fees](/lightning-network-concepts/lightning-channels-and-fees)
{% endcontent-ref %}

{% content-ref url="/pages/4aYP8qHxfeTefGY3x8qz" %}
[Broken mention](broken://pages/4aYP8qHxfeTefGY3x8qz)
{% endcontent-ref %}

{% content-ref url="/pages/6l2kUIod6RTQQdKNT82Z" %}
[Broken mention](broken://pages/6l2kUIod6RTQQdKNT82Z)
{% endcontent-ref %}

### Additional Resources

The Bitcoin and Lightning communities have made so many incredible resources available.  These pages are an evolving list of helpful links, guides, open source projects, and resources:

{% content-ref url="/pages/EPI5ngutBlT0WMjQgde0" %}
[Broken mention](broken://pages/EPI5ngutBlT0WMjQgde0)
{% endcontent-ref %}

{% content-ref url="/pages/IXD4NG7YAWiPVElUviJW" %}
[Broken mention](broken://pages/IXD4NG7YAWiPVElUviJW)
{% endcontent-ref %}


# Lightning Network Overview

An overview of the Bitcoin Lightning Network and its components

## What Problems Does the Lightning Network Solve?

At a high level, the Bitcoin Lightning Network offers a scalable solution for limitations Bitcoin faces as an immediate medium of exchange.

Bitcoin offers all of the functions desired in a [sound money](https://blog.exponentiallayers.com/does-bitcoin-actually-solve-a-problem/): a medium of exchange, a measure of value, a standard for deferred payment, and a store of value. It also has all of the desired properties of fungibility, durability, divisibility, portability, and scarcity.

However, due to its architecture, there are limitations when using Bitcoin for everyday transactions.  A Bitcoin transaction takes \~10 minutes to take effect (confirmed in a block), and depending upon the application and payment, there can be an additional 30-60 minutes waiting for additional confirmation (up to 6 block confirmations).

There are also limitations on the fee structure of Bitcoin that may prohibit smaller transactions.  Transaction fees generally (technically dependent upon UTXO input size) are the same whether .01 BTC or 1,000 BTC are sent.  As such, a small transaction of a fraction of a Bitcoin may appear 'expensive' due to the on chain fees representing a higher percentage of the transaction total (ie a $1 fee on a $5 purchase is expensive vs a $1 fee on a $5 million purchase is cheap).

The Lightning Network removes these two limitations of speed and cost, and allows for the best of both worlds.  We have Bitcoin the asset with all of its sound monetary functions and properties, the security of the Bitcoin blockchain and the Proof-of-Work consensus algorithm, traced with full transparency on chain, all with self custody options - and now with Lightning we have a scaling layer that augments the scaling properties of Bitcoin.

## How Does the Lightning Network Work?

The Lightning Network is quite complex.  Linked here are a number of guides and resources that so many people have helped add for getting ramped up.

At its core, the Lightning Network is a peer-to-peer architecture similar in many ways to the [internet's architecture](https://blog.exponentiallayers.com/networking-and-internet-fundamentals/) that allows for instant payments.  It may be easiest to understand with an example.

### A Practical Analogy and Example

Suppose you have a friend you go out with on a regular basis for dinner or drinks.  When the bill comes, one of you ends up picking up the tab.  Although you could pay each other back every time, you know that over time it will all even out.  $20 here, a round there, a dinner - it all adds up, but you all alternate who pays and its easier then sending a Venmo every time.

This is a bit like how the lightning network works.  You establish a relationship with a peer (a friend), and agree to commit funds to a channel (say $100), which represents the maximum you all would be willing to spend with one another.  Now every time you all go out to grab drinks, whoever picks up the tab just increments an IOU.  At any time either of you all could cash out, net all of the IOUs, and receive the deposited Bitcoin back to your respective accounts.

And with the Lightning Network, this analogy extends.  Perhaps your friend (Alice) is a popular person with many friends.  She decides to open many payment relationships with their friends - so Bob, Charlie, and Dana all work with Alice to commit varying amounts - $20, $100, $300 - to open up payment channels with Alice.

This actually helps everyone, because now you, a friend of Alice's, can pay or receive funds from Bob, due to he and Alice's connection.  There are some rules and nuance to make this all work behind the scenes, but the '6 degrees of separation' in our social graph really comes to light as the network effects take place.  With more relationships (channels) and people (nodes), the Lightning Network scales to offer everyone instant payment in Bitcoin.

Of course this is a simple example, and the next sections go into more detail on more of these building blocks - the Nodes, Channels, and Network data that brings everything together.

{% hint style="info" %}
**Looking for more Lightning and Bitcoin getting started resources?** Check the links in Bitcoin Resources and Lightning Resources
{% endhint %}


# Lightning Nodes

An overview of Bitcoin Lightning Network Nodes

## What is a Lightning Node?

Lightning Nodes are able to connect to the Bitcoin blockchain and the Lightning Network.  A node adheres to [BOLT specifications](https://github.com/lightning/bolts/blob/master/00-introduction.md) and there are different implementations for Lightning Nodes.  Lightning Node operators can:

* Open Channels to other Nodes
* Create a Lightning Invoice for a Payment
* Pay an existing Lightning Invoice

## Exploring Nodes

The [Exponential Layers Lightning Explorer](https://app.exponentiallayers.com/Nodes?filter=Active\&currentPage=1) gives visibility into all nodes present on the lightning network.

![Browse all Lightning Network Nodes](/files/tbOf3pea8ojPt2ZKQDaN)

Every 20 minutes, node details are collected, and all additions, deletions, and updates are reflected for each node on the network.

### Aggregate Node Definitions

**Total Nodes:** Nodes can exist on the network but they may be in an offline state or not connected via any channels. Total node count consists of all nodes seen on the network.  Any nodes that were once present on the network but have since been deleted, are not included in this total.

**Active Nodes:** Refers to Nodes that are online with at least one connected and active channel.

**Top Capacity:** Includes all non-deleted nodes ordered by the sum of their connected channel capacity.

**Top Channel Count:** Includes all non-deleted nodes ordered by the count of their connected channels.

### Individual Node Properties

Nodes can be filtered via the above definitions and are also searchable by public key.

![See the details of a specific Node](/files/fbBBeGHCfan9SqxSAhG9)

**Pub Key and Alias:** The identifiers of a Node.  Alias is an optional field set by the Node operator, and Public Key is unique and identifies a node on the network.

**Last Update:** This date (UTC) is received from the Lightning Network.

**Address:** The IP or Tor address for communicating with the node.  To connect to a node you can leverage the form \<Pubkey>@\<Address>

**Status:** Nodes present in the Network graph are marked as active.  Once a node has been deleted and is no longer in the network graph, it is marked Deleted.

**Node Capacity:** The sum of all (non deleted) channel capacity of a node.

**Total Channels:** The count of all non-deleted channels of a node.

## Connecting to and Setting Up a Lightning Node

One of the easiest and fastest ways to get started with the Lightning Network is by leveraging the incredible platform and tools provided by **Voltage** and **ThunderHub**.

[Voltage](https://voltage.cloud/) offers AWS/Azure like infrastructure for spinning up a Node.  For \~$10-30/month you can create a Node, load it with BTC and start interacting with the Network.

Voltage has native integrations with [ThunderHub](https://thunderhub.io/), which offers a great, easy to use GUI for seeing all Node details.

Voltage and ThunderHub have great documentation and getting started resources on their respective sites.

Once your node is setup (and connected to the network with a channel), you can see all of your data in the [Lightning Explorer](https://app.exponentiallayers.com/Nodes?filter=Active\&currentPage=1) (search by your nodes public key).


# Lightning Channels and Fees

An overview of Bitcoin Lightning Network Channels, Details, and Fees

## What is a Lightning Channel?

A Lightning Channel is a connection between two nodes on the lightning network.  Channels have a few key properties and limitations:

### Capacity

This refers to how much liquidity (money) can be sent via this channel.  In a paired down example where Alice and Bob share a channel with a capacity of 1 BTC, they could send a maximum of 1 BTC between the two of them.

In this same manner, channels can be used to connect multiple nodes together (A <-> B <-> C).

### Liquidity

One of the trickier starting points of channels is understanding the role of 'liquidity' and how channels are created.

The creation of a channel requires the entire capacity of the channel to be committed at channel creation.  So if a channel of .1 BTC is desired, the funds must all be available from the start.

After a channel is created, the funds then must exist on the correct 'side' of the channel for a payment to be routed correctly between two connected nodes.  Back to an example - Alice and Bob are friends and go out for food and drinks on a regular basis.  Rather then Venmo each other, they decide to open a lightning channel with $100.  If Alice opens the channel to Bob, she will have to commit $100 (in BTC), which is then locked up and seen in an on chain transaction (on the Bitcoin blockchain).  Since Alice deposited the funds in the channel, all of the 'liquidity' (money) is on her side.  Bob does not have any money, and cannot yet use the channel to send money to Alice.  So Alice will have to metaphorically 'buy the first round' and send the first payment from the committed funds to Bob (any amount less than the channel capacity).  Once that money has been sent, Bob can then send up to that amount back to Alice, and they can continue in this fashion.

This 'liquidity' issue when bootstrapping channels has led to an evolution of marketplaces that will 'return the favor' and open a channel back to the initiator so that both parties can immediately begin transacting with each other, or routing payments between them.

## Exploring Channels

With the concepts of capacity and liquidity, we can use the [Exponential Layers Lightning Explorer](https://app.exponentiallayers.com/Channels?filter=Active\&currentPage=1) to view all channels present on the Lightning Network, and to drill down to specific channels and their details.

Every 20 minutes, node and channel details are collected, and all additions, deletions, and updates are reflected for each node and channel on the network.

![Explore and filter Lightning Channels](/files/AR5TncKOS1WQFD3RO9Yi)

### Aggregate Channel Definitions

**Total Channels:** The total number of non-deleted channels present in the Lightning Network Graph

**Active Channels:** The total number of non-deleted channels present in the Lightning Network Graph that have both Nodes and their policies marked as Active.

**Total Channel Capacity:** The sum of all non-deleted channels and their capacity.

**Active Channel Capacity:** The sum of all active (non-deleted and with both nodes and their policies marked active) channels and their capacity.

### Individual Channel Properties

Using the [Exponential Layers Lightning Network Explorer](https://app.exponentiallayers.com/Channels?filter=Active\&currentPage=1), Channels can be filtered using the above definitions and are also searchable via Channel ID.  Channels can be searched in aggregate or by specific Node.

![Lightning Channel Detail page](/files/oRZO1EgKAKr8UK4KkyUg)

**Channel Point:** When a channel is created, an on chain (Bitcoin blockchain) transaction is created.  This on chain transaction and its details can be seen in any Bitcoin Blockchain explorer.  These details are linked on the Channel detail page.

**Last Update:** The last date of update received from the Lightning Network.

**Status:** (Active, Disabled, Deleted) Active Channels are seen on the network and both nodes have online and active node policies.  Disabled channels can occur when a channel has been closed but is still active in the network graph, or when either of the channel's node partners goes offline for any reason.  Deleted channels were once opened but do not continue to appear in the network graph.

**Node Public Key & Alias:** The identifiers of a Node.  Each Channel connects two nodes.  Alias is an optional field set by the Node operator, and Public Key is unique and identifies a node on the network.

**Channel Node Routing Policies:** A Channel is the connection between two Nodes, and the operators on each side of the channel have the ability to determine the 'rules' for how payments can be routed through them.  This takes its form through fees that each node operator can (dynamically) set.

**Node Routing Policy Last Update:** The date received from the network graph of the latest node routing policy update.

**Node Policy Status:** (Active, Disabled) Active Node policies occur when the node is online and operating as an open channel partner.  Disabled Node policies can occur when a channel close is or has been initiated or when the node is offline.

**Fee Base:** This is the minimum fee that a node will receive for routing a payment, and is calculated in milli-satoshis.  A fee base of 1000 is equal therefore to 1 sat.  If Bob and Alice have a direct channel between them, then no fees are applied.  But if Bob is the connecting Node between Alice and Charlie, then Bob can set a fee for routing Alice's payment to Charlie (and vice versa).

**Fee Rate (Parts per Million):** In addition to the base fee, a node operator can set a percentage of the routed payment as a fee.  This is calculated as parts per million (represented in satoshis).  If this node routes a 1 Million satoshi payment, it would receive that many sats in return.  A PPM of 1000 would receive 1 sat on a 1,000 sat payment routed.

**Time Lock Delta**

**Minimum Hash Time Lock Contract (HTLC)**

**Maximum Hash Time Lock Contract (HTLC)**

## Channel Management & Best Practices

This guide just scratches the surface of Channels.  Getting channels bootstrapped, updating fees, finding good node partners, and profitably running a node (and channels) is a complex endeavor and there are [some great guides out there](https://medium.com/@cold_sats/how-to-bootstrap-a-profitable-lightning-node-8de72beac59c).

Just like setting up a Node, [Voltage](https://voltage.cloud/) offers infrastructure to get started with channels quickly.  One of the fastest ways to get started is to Create any number of Voltage Lightning Nodes, and then create channels between them.  You can also download a Lightning Wallet (such as [WalletOfSatoshi](https://www.walletofsatoshi.com/)), create a channel to it, and then pay yourself over the network.

There are a lot of evolving resources here and will be updated on an ongoing basis.


# Lightning Explorer & Analytics

Understanding Lightning Network Data in Aggregate

## Network Capacity Analytics

**Network capacity** refers to how much Bitcoin is present across all channels (and their connecting nodes) on the Lightning Network.

Channel capacity refers to the largest one time payment amount that could be transferred from one connected node to another.  There are specifics of local vs remote liquidity that also play into this, and as routes involve multiple peers, capacity on the route becomes a limiting factor.

Capacity does not restrict total payment volume, however.  For example, millions of satoshis could be transferred back and forth between payments as often as needed.  So the total payment volume found on the Lightning Network is not limited by capacity.

Overall, Network Capacity offers a proxy for how large the network has grown, and by drilling down to individual channels and channel paths, we can glean insight on routing and how value can be transferred across the internet.

The [Exponential Layers Lightning Explorer](https://app.exponentiallayers.com/Index) offers aggregated details for capacity.  All data is synced and aggregated from the evolving Lightning Network graph every 20 minutes.  The last update time is displayed (UTC).

![Explore all aggregated network data in the Lightning Explorer](/files/GTwGGeJpREkKsh0vJJcw)

**Total Network Capacity:** The sum of all non-deleted channels and their capacity.

**Active Network Capacity:** The sum of all active (non-deleted and with both nodes and their policies marked active) channels and their capacity.

**Total Nodes:** Nodes can exist on the network but they may be in an offline state or not connected via any channels. Total node count consists of all nodes seen on the network.  Any nodes that were once present on the network but have since been deleted, are not included in this total.

**Active Nodes:** Refers to Nodes that are online with at least one connected and active channel.

**Total Channels:** The total number of non-deleted channels present in the Lightning Network Graph

**Active Channels:** The total number of non-deleted channels present in the Lightning Network Graph that have both Nodes and their policies marked as Active.


# Lightning Network Notifications

Creating and Managing Notification Rules

## Notification Overview

[Lightning Network Notifications](https://app.exponentiallayers.com/Notifications) offer a way to understand the ongoing changes in the lightning network.  At any given point, the more than 18,000 lightning nodes can go offline (or come online), and new channels can be established, updated, or changed.

The Lightning Network explorer offers a snapshot into all of this data on a refreshed 20 minute interval, by syncing and performing analytics on the network graph.

With **notifications**, this insight is extended to show all of the changes for any given channel over time.

**Did a channel's source or target node go offline or come back online?**

**Was a new channel established or closed?**

The [Exponential Layers Lightning Explorer](https://app.exponentiallayers.com/Index) offers functionality to create custom notifications for any channel update to any node(s) across the network.  Gain better visibility into any channels opening or closing to/from your node, or research activity to/from other nodes on the lightning network.&#x20;

![](/files/hi679yUg0UQ5MSjAk2mh)

## Creating Notification Rules

Each user can create up to 2 channel rules (as of 6/20/2022).  For additional quota, please get in touch.  [Creating a channel notification rule](https://app.exponentiallayers.com/Notifications/Create) requires the following form and field to be completed:

![](/files/kgcy9Aeh85ynCfajcXNG)

**Custom Notification Name:** any memorable name that is helpful for you can be added to identify this notification an its intent.

**Notification Action:** Notifications currently can be created when a channel is opened, closed, or re-enabled, or disabled.

**Peer Node 1 PubKey:** Peer Node 1 is the first node of a channel, and is identified by public key.

**Peer Node 2 PubKey:** Peer Node 2 is the second node of a channel, and is identified by public key.

**Delivery Mechanism:** All notifications will be displayed in the Exponential Layers application regardless of option selected.  If you choose to select the Email option, a single email with all notifications generated in a 20 minute interval will be sent to you, provided at least one notification was triggered within the interval.

**Feedback, requests, or issues with notifications?**  Please reach out to <aleroy@exponentiallayers.com>


# Verify and Customize Your Lightning Node

Customize Your Node, Select a Category, and Feature Your Company

## Node Verification

To verify your node and gain access to customization features, you must sign a login message using your lightning node.  This signed message will then be checked, along with you node's pubkey to cryptographically prove you are the owner.

There are many tools and options for signing a message with your node.  Two popular examples are [Thunderhub IO](https://thunderhub.io/) and [Ride The Lightning](https://www.ridethelightning.info/).  Examples can be seen below:

**Signing a Message with ThunderHub:**

![](/files/eAGz4aAKtogzpbvmyl4r)

**Signing a Message with RTL:**

![](/files/Ol4bUFCd1HNVB8oKYHwK)

<details>

<summary>Node Verification in detail</summary>

After signing and submitting your signed message, Exponential Layers receives the message via SSL/TLS to our Azure infrastructure and checks the message by sending the request to our Voltage Lightning Node infrastructure (using an LND gRPC API call).  Assuming the verification check is successful, Exponential Layers issues two secure browser cookies (your node pubkey and signed message) which are valid for 30 days.  The signed message is never stored server side.  To access your verified node from another browser, simply enter the pubkey and signed message for your node to be taken to the customization page.

</details>

![Sign the login message with your node and enter it on this page](/files/ALyUDhlMCOeVmL2n5jTu)

## Customizing Your Node

After verifying your node, enter any optional details, including:

* Node Avatar/Icon
* Banner Image
* Node/Business Category
* Website
* Twitter Handle
* Node/Business Description and Details

All details will remain private until the slider is turned on to save details as public.  This slider can be turned off at any time to hide any public details from the public explorer.

See an example node with [all details here](https://app.exponentiallayers.com/Nodes/Details/02c67b82d43f367a4fe4c071832a085b21efecfe4ca1977d59a3da2ab2b30cfeb6?filter=Active\&currentPage=1)

**Depending on your node size and business category, your node once verified with a business category will be featured in the** [**Explorer Node Directory**](https://app.exponentiallayers.com/Explore/Directory?filter=Exchange\&currentPage=1)**.**

![Feature your node and business in the explorer directory](/files/XznsaJUbUgZr3wVtL4PH)


# Lightning Explorer

The Exponential Layers Lightning Network Explorer

<https://app.exponentiallayers.com/>


# Blog

The Exponential Layers Blog

<https://blog.exponentiallayers.com/>


# Home

Exponential Layers

<https://www.exponentiallayers.com/>


