> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arc.io/llms.txt
> Use this file to discover all available pages before exploring further.

# How-to: Configure transfer speed and maximum cost

> Set a transfer speed and maximum fee to balance performance and cost

By default, the App Kit SDK uses CCTP's
[Fast Transfer](https://developers.circle.com/cctp) feature to optimize for
speed. However,
[this can incur higher fees](https://developers.circle.com/cctp/technical-guide#fees).
If performance is not a concern, you can specify a slow transfer speed, which
uses CCTP's Standard Transfer feature.

To balance performance and cost, you can set the maximum fee you want to pay on
fast bridge transfers. The transfer switches to slow if the cost is above your
limit.

## Prerequisites

Before you begin, ensure that you've:

* [Installed the App Kit SDK](/app-kit/tutorials/installation)
* [Configured an adapter](/app-kit/tutorials/adapter-setups)

These are required so any example below runs with a valid `kit` and `adapter`.

## Configure slow speed

This code configures a slow transfer speed:

```typescript TypeScript theme={null}
const result = await kit.bridge({
  from: { adapter, chain: "Ethereum_Sepolia" },
  to: { adapter, chain: "Arc_Testnet" },
  amount: "1.00",
  config: { transferSpeed: "SLOW" },
});
```

## Configure maximum fee

Set the maximum fee that you want to pay for the CCTP fast burn.

<Note>
  For bridges from Arc Testnet, the amount must exceed the CCTPv2 max fee
  (around 1.4 USDC). If the amount is too low, the burn step can revert with
  `"Max fee must be less than amount"`.
</Note>

This code configures a maximum fee of 0.10 USDC:

```typescript TypeScript theme={null}
const result = await kit.bridge({
  from: { adapter, chain: "Ethereum_Sepolia" },
  to: {
    adapter,
    chain: "Arc_Testnet",
  },
  amount: "1.00",
  config: {
    transferSpeed: "FAST", // Fast transfer speed (can be omitted)
    maxFee: "0.10", // Max 0.10 USDC fee
  },
});
```
