A user bridging USDC to a chain where they hold nothing cannot move it afterwards. Gas drop solves that: the fulfillment delivers a requested amount of the destination chain’s native asset in the same transaction as the payout, out of vault float.

Requesting it

gas_drop is a decimal string in base units of the destination chain’s native asset: wei on EVM chains, lamports on Solana, MIST on Sui. Send an empty string or omit it for none.
It is priced into the quote like any other component: the cost appears in fee_breakdown as gas_drop on the destination side, and amount_out is already net of it.

Ceilings

Each chain caps how much can be dropped. Exceeding the cap fails the quote with gas drop exceeds the allowed maximum. Read the live ceiling from GetChains rather than hardcoding it:
native_symbol and native_decimals come back on the same message, which is everything needed to render a slider from zero to the cap without a second source of truth.

Behavior

The drop is part of the fulfillment, not a separate transfer: the recipient receives tokens and native asset in one transaction, or neither. On a refund it is never delivered and never charged: refunds deduct only the committed refund fees, and gas_drop sits on the destination side. When the destination token is itself the native asset, the request’s gas_drop is ignored and priced as zero, because the payout already is gas. Same-chain swaps never carry a drop.
A recipient that is a contract must be able to receive native asset. If the transfer to it fails, the fulfillment fails with it.