---
# System prepended metadata

title: 'Product Comparison: Li.Fi'

---

# Product Comparison


## Li.Fi

Based on our conversations with the LiFi team, they require 0 fees! However if Allo wants to activate fees, they offer a fee share.

### How it works:

Li.Fi is available on 20 chains, and is open to moving onto more. They provide swapping, bridging, and onramping.

When bridging, they will compare quotes between many different underlying bridges, then select the bridge with the best total price.

They allow for selecting a slippage tolerance which is 0.5% by default. 

Li.Fi has been around for 2.5+ years, they also allow us to integrate on the application layer or the contract level



| Metric                  | Li.Fi                                      |
|-------------------------|---------------------------------------------|
| **Fees/Costs per Bridge**| Fee: 0% and 0c     |
|                         | 
| **Chains Available**    | Currently on 20 chains: ETH, POLYGON, BASE, OPTIMISM, ARBITRUM, BSC, PolygonZKEvm, avalance, gnosis, etc..![image](https://hackmd.io/_uploads/SkD-Mc9ha.png)
 |
|                         | Willing to work with other chains            |
| **Level of Integration**| Integration on both frontend and contracts  |
|                         | Can transfer messages cross-chain, via zaps        |
| **In Operation** | Over 2.5 years+                                     |
| **Time to Implement**   | Quick based on chosen strategy               |
| **Team Support**        | Available and willing to provide support    |
| **Upkeep Requirements** | Not specified                               |
| **Benefits (On/Offramping)** | Onramping available via SDK  |
| **Offers Insurance** | [Bridge insurance](https://li.fi/knowledge-hub/introducing-bridge-insurance/) |

### Sequence diagram LiFi flow - direct deposit

```mermaid
sequenceDiagram
    participant RO as Round Operator
    participant AC as Allo Contract
    participant SC as Modified Strategy
    participant ACx as Proxy Contract
    participant D as Donor
    participant P as Project
    participant Bridge as LiFi Diamond

    RO->>+AC: createPool(...)
    AC-->>-RO: Returns Pool ID

    RO->>+AC: registerRecipient(_poolId, _data)
    AC->>+SC: registerRecipient(...)
    SC-->>-AC: Returns Recipient ID
    AC-->>-RO: Project is Registered

    D->>+ACx: _forwardFunctionCall(allocate, _data, _sender)
    Bridge->>ACx: Deposits Funds & Calls Proxy
    ACx->>AC: Decodes message & calls allocate
    AC->>SC: Verifies & Executes Checks
    SC->>AC: Allocated Event Emitted
    AC->>P: Transfers Funds to Project
    ACx-->>-D: Vote Recorded & Funds Transferred

    RO->>+AC: fundPool(_poolId, _amount)
    AC-->>-RO: Pool is Funded

    RO->>+AC: updateDistribution(_merkleRoot, _distributionMetadata)
    AC->>+SC: Distribution Data Updated
    SC-->>-AC: Update Confirmed
    AC-->>-RO: Distribution Data Updated

    RO->>+AC: distribute(_poolId, _recipientIds, _data)
    AC->>SC: distribute(...)
    SC->>P: Matching Funds Distributed
    AC-->>-RO: Funds Distributed to Projects
```



### Testing examples:

# Token Transfers Comparison

| Transfer Route            | Amount (USDC) | Received Amount (USDC) | TOTAL FEES Paid in usd |
|---------------------------|---------------|------------------------|----------|
| **Polygon to Optimism**   | 1000          | 997                | 3$  |
|                           | 100           | 98.48               |  1.52$  | 
|                           | 10            | 8.93               | 1.07$    | 
| **Base to Optimism**      | 1000          | 1000                | 0$
|                           | 100           | 98.6                  | 1.4$| |
|                           | 10            | 8                  | 2$ | 
| **Arbitrum to Optimism**  | 1000          | 997                | 3 |
|                           | 100           | 98.6               | 1.4$ |
|                           | 10            | 8.88                | 1.22$  |              
| **Ethereum to Optimism**  | 1000          | 998.2              | 1.8$ |
|                           | 100           | 99                  | 1$ |
|                           | 10            | 9                   | 1$ |





