Before you sell
You need compute time that you own and access to thesf command-line interface (CLI). Follow the quickstart to install the CLI and sign in.
Your pool records the compute time that you own, called allocation. Each stock keeping unit (SKU) identifies a hardware configuration. Choose the pool and SKU whose time you want to sell.
The examples use the pool name production-inference. Replace it with your pool name, and replace your_sku_id with your SKU. Set the times and rates for your sale; the prices below are examples, not live quotes.
How reselling works
Place a sell order for time that your work does not need. When a buyer purchases that time, the order fills and SF Compute removes the sold allocation from your pool.1
Choose unused time
Keep enough allocation for planned work before you offer time for sale. Include these needs:
- Jobs that are running
- Jobs that are waiting to start
- Spare nodes for new work
2
Check the market price
Check the best bid and ask for the SKU and exact period you want to sell. A bid is the price a buyer offers; an ask is the price a seller requests.Use market depth to check the number of nodes at each price. Set
--min-rate to the lowest price you will accept, in dollars per node-hour.3
Place the sell order
This example assumes you own 5 nodes for 14 days, with 2 extra nodes from day 3 to day 8. You need only 2 nodes during a 3-day holiday that starts on day 8.Offer 3 nodes for that holiday:Use
--allow-standing to keep the order open while it waits for a buyer. The order stays open until it fills, you cancel it, or the offered time ends. Save the order identifier (ID) to check or cancel the order later.How your pool tracks allocation
Your pool keeps one schedule for each SKU. This schedule adds time you buy and subtracts time you sell. Sell from that schedule, not from a single purchase. You can sell any part of the time you own, including a period in the middle. Only the time a buyer purchases leaves your pool. The same rules apply to time bought through a spot deployment or a firm reservation.How a sell order fills
By default, a sell order fills completely or not at all. Use--allow-partial to let buyers purchase smaller parts of the offered nodes or time. The fills can cover separate periods with gaps between them.
Fills use whole minutes, with a minimum of 1 node for 1 minute. You cannot set a larger minimum fill size. Use the order fields fills and filled_allocation_schedule_delta to check the exact nodes and time that sold.
What happens to your instances when you sell
Each running instance needs enough compute time in its pool. If a sale leaves too little time, SF Compute terminates instances in this order:- Instances with the lowest priority
- The newest instances among those with the same priority
your_instance_id with the ID of an instance you want to terminate:
Choose time to sell
Sell a period when your jobs do not need the compute. Low use of graphics processing units (GPUs) alone does not mean the time is spare. An instance can still contain data or be necessary for a later job.Sell the end of a reservation
Sell the last hours of a reservation when work ends early. Here, you own 1 node for 12 hours but need only the first 8 hours. Sell the last 4 hours:Sell a gap between jobs
Offer a gap when work can stop and continue later. This example keeps the first 2 hours and last 4 hours of the same 12-hour reservation. Choose this example or the one above. Both together leave only the first 2 hours; the first sale removes the last 4 hours you need here. Sell the 6-hour gap:- Platform fees
- Replacement compute
- Moving the work
How to make a sell order fill
Price and order size affect your chance of finding a buyer. Consider these options:- Set
--min-ratebelow current prices for the same SKU and period. - Offer small amounts, such as 1 node for 1 hour, which can be easier to match.
- Use
--allow-partialif you can sell smaller parts of the offered nodes or time. - Offer time early to give buyers more time to find your order.
- Keep an order open if some of its time has passed; a buyer can still purchase the remaining time.
- Use several sell orders for a pool when you need different prices or periods.
standing state waits for a buyer, and you still own the time. You might not find a buyer before the offered time ends.
Reprice or cancel a listing
You can lower your price as the start time gets near. Do not go below the lowest price you will accept. Cancel the open order and check its fills before you place a new one.1
Request cancellation
Replace
your_order_id with your sell order ID. Run this command to ask SF Compute to cancel the order:2
Wait for the final result
Read the order fields as JavaScript Object Notation (JSON). Use the same order ID, and repeat until the state is A buyer can purchase time while cancellation is in progress, and that time stays sold. Check
cancelled or filled:fills and filled_allocation_schedule_delta before you sell or use the time again.3
Use only the remaining time
Subtract all fills from the time you first offered. If 2 hours of a 6-hour sale fill before the order stops, only 4 hours become free again.Keep that time reserved until the order reaches its final state. See Cancel an order for more details.
Calculate your resale credits
Subtract the platform fee from the sale value to find the credits you receive. The sale value depends on the fill price and the number of node-hours sold.How the fill price is set
The order that reaches the orderbook first sets the fill price. Your--min-rate remains the minimum price you will accept:
Platform fee
SF Compute subtracts a platform fee when your sale fills. The fee has two parts:
The 3-node, 3-day holiday sale contains 216 node-hours: 3 × 3 × 24. Its fee includes the fixed amount for those node-hours plus the percentage of the sale value.
SF Compute sets both fee parts, and your fees can change. Fees can also differ between organizations. Check the fee estimate in the CLI before you confirm an order. The fee cannot exceed the sale value, so a sale cannot reduce your credit balance.
The buyer pays the fill price, and the
fills array shows prices before fees. SF Compute subtracts the fee from your sale value and adds the remaining amount to your credits.
Track your realized price
Your realized price is the cost per purchased GPU-hour after resale. Use the credits you receive after fees:
For example, a $100,000 purchase with $25,000 in resale credits gives these results. The original rate is $4.50 per GPU-hour:
This calculation uses all purchased GPU-hours. The cost per GPU-hour of completed work also depends on how much of the remaining time you use.
The September 9, 2026 resale article reported a 25% average realized discount for customers on the platform. Your results depend on the time you sell, demand, prices, and fees.