Marginfi is a Solana-native, overcollateralized lending and borrowing protocol with pooled liquidity, live health-factor management, and a safety-first oracle policy.
Borrowers post collateral, draw liquidity, and pay utilization-driven interest while lenders earn yield from borrower demand.
Liquidations are automatic and permissionless, with a 5 percent penalty on the portion liquidated that is split between the liquidator and the asset’s insurance fund.
The protocol charges a spread fee on the difference between borrow and lend rates. The stated spread is 12.5 percent on SOL, USDC, and USDT and 13.5 percent on other assets.
Marginfi deliberately blocks oracle-dependent actions when prices are stale to prevent manipulation. This improves lender safety but can delay user actions during network congestion.

What the app offers right now
- Core actions in the app: deposit assets to earn, toggle collateral, borrow, repay, and withdraw with a single health-factor bar driving risk awareness.
- Market coverage: core pools around SOL and major stables, with additional assets configured by risk tier and oracle availability.
- UX expectations: real-time APRs, simple action panels, and clear warnings when price data is stale or actions would push an account toward liquidation.
- Extras for power users: progressive web app installation, a dedicated staking and LST surface, and ancillary tools like mrgnloop for looped exposure and rate arbitrage.


Fees, rates, and yield mechanics
- Interest is utilization-driven. Lenders see higher APY when a market’s utilization rises and borrowers pay more as pools tighten.
- Protocol spread fee is taken on the borrow-lend differential. The stated schedule is 12.5 percent for SOL, USDC, USDT and 13.5 percent for other assets.
- Collateral-repay routes can include a referral cut from the integrated swap path, framed as roughly 30 bp.
- What to verify while testing: current APRs at different utilization points, spread deductions on volatile days, and whether referral routes disclose expected slippage and fees.

Risk engine in practice
Oracles and freshness: Marginfi primarily uses Pyth and Switchboard and applies its own maximum staleness window. When prices are stale, oracle-dependent actions are intentionally blocked until fresh data arrives.
Health factor: asset and liability weights plus buffers are compressed into a single health metric that the UI surfaces continuously.
Insurance funds: each bank accrues a share of liquidation fees into an insurance fund that backstops that market.

Liquidations and what users should expect
Trigger: if the health factor drops below maintenance due to price moves or interest accrual, the engine liquidates only the amount necessary to restore health.
Penalty and flow: a 5 percent fee on the liquidated portion, split evenly between the liquidator and the asset’s insurance fund.
Why this matters: liquidity providers depend on timely, competitive liquidations to keep pools solvent; borrowers must size LTV with a cushion for price and funding swings.
Oracle policy and usability tradeoffs
The stale-oracle policy is protective by design. During Solana congestion, oracles may update less frequently; Marginfi opts to halt price-sensitive actions rather than risk executing on outdated data.
Practical impact during volatility: borrowers might see temporary blocks on borrows, collateral toggles, or health simulations. Lenders continue to accrue interest, but some flows are gated until prices are fresh again.
Incentives and growth levers

- A permissionless Liquidity Incentive Program lets anyone create deposit incentive campaigns for supported assets. This can deepen specific pools without relying on centralized approvals.
- Emissions and points vary by campaign and epoch. Treat them as variable add-ons to base yield rather than guaranteed returns.
- What to audit before publishing: current live campaigns and their lockups, whether LIP deposits can be used as collateral, and how emissions are claimed.
Developer surface and integration pathways
Programs: the v2 lending program is open sourced and live on mainnet with documented instruction flows for deposits, borrows, and liquidations.
SDKs and tooling: official TypeScript SDK and a Rust CLI support core account operations, market queries, and oracle-age checks.
Patterns that matter to builders: liquidator bots tuned to the 60-second default max-age unless overridden per bank, monitoring for stale-oracle windows, auto-rebalancing strategies, and collateral-repay routes.
What to include in your appendix: a short code snippet that lists banks, reads per-asset parameters, simulates a borrow, and prints oracle ages.
App walkthrough

Onboard: connect a Solana wallet, view supported assets, and read the per-asset parameters before depositing.
Lend and borrow: begin with a small test deposit, confirm lender APR, then borrow a conservative amount to surface the health bar and live interest.
Manage risk: simulate a 20 to 30 percent adverse move on volatile collateral in your notes and show the resulting health estimate.
Repay and withdraw: demonstrate a normal repay and a repay-from-collateral route to document fee and slippage disclosure.
Mobile note: if you recommend mobile usage, test the PWA install, session persistence, and reconnect behavior.
Who Marginfi is best for
- Retail lenders who want transparent risk handling, steady utilization-linked yields, and clear liquidation economics.
- Borrowers who run conservative LTV and are comfortable with protective oracle gating during congestion.
- Funds and market makers that need predictable liquidation mechanics, credible oracle policy, and usable SDKs for bots and dashboards.
Competitive positioning on Solana

- Differentiators worth highlighting in a comparison table: explicit stale-oracle gating with a documented max-age default, per-asset insurance accrual, a transparent spread-fee schedule, permissionless incentives, and first-party SDKs.
- Where it wins today: clarity around liquidation and oracle rules, solid developer ergonomics, and straightforward app flows.
- Where to watch: realized liquidation throughput during major drawdowns, the cadence of insurance-fund growth, and whether stale-oracle windows shorten as Solana infra and oracle providers evolve.
Pros
- Transparent liquidation policy and 5 percent penalty split that strengthens per-asset insurance funds over time.
- Documented spread-fee schedule with concrete percentages by asset category and clear disclosure on collateral-repay referral economics.
- Safety-first oracle policy that blocks risky actions when price data is stale, reducing manipulation windows.
- Strong developer surface with TypeScript SDK, Rust CLI, program docs, and guides that cover staking, loop strategies, and PWA.
Cons
- Oracle-gating can delay urgent operations during congestion, which is frustrating for active borrowers and requires automation or patience.
- Smart-contract and oracle dependencies remain and require users to size risk and monitor health proactively.
- Liquidation costs are meaningful for borrowers and can compound during volatile markets if positions are aggressive.
Conclusion
Marginfi presents a careful balance of speed and safety. The interest model is familiar, liquidation mechanics are predictable, and the oracle policy leans toward protecting lenders.
For lenders this is a credible base layer for conservative yield on core assets. For borrowers it rewards disciplined LTV management and a tolerance for occasional gating during volatile network conditions.
For builders the documented program, SDKs, and incentives make integration straightforward. Treat points and emissions as variable upside, measure realized liquidation speed during stress, and keep an eye on insurance fund growth and oracle service improvements.