Fleet Split: Setup Guide for Hosting Operators

Everything an operator needs to run Fleet Split: how the block is split, what to prepare, the 12 steps from the first login to dissolving an agreement, the alerts, the reports and the API. Each step says what you do, what you see and what to check.

Fleet Split is solo mining per client with a three-output coinbase: 1% to us, your quota to you, the rest to the client whose machines found the block. You create each agreement yourself from a console you sign in to with your Bitcoin wallet. The client confirms with one signature from their own wallet. From then on, the block pays everyone directly.

Version 2.0 · 23 October 2026 · Bitcoin (BTC). For the comparison with Fleet Group and Fleet Pool, see SoloFury Fleet: Split, Group and Pool.

Key takeaways

  • Every agreement links one client address and one fresh address of yours. The client’s machines sign in to the pool with your address followed by the machine name: this is how the pool knows which agreement they mine for.
  • Apart from our fixed 1%, you and your client set the quota. It is written into the coinbase and stays fixed for the life of the agreement.
  • You work from the console: add a client, send an invitation link, copy the credentials when the agreement is ready on every server.
  • You and your clients get Telegram alerts for blocks, machines and agreements. Clients connect with a wallet signature.
  • Every block has a line in the CSV and PDF report, with the coinbase txid and each output in satoshi. A read-only API key serves the same data to your tools.

How Fleet Split works

When a machine of an agreement finds a block, the coinbase of that block contains three outputs. The table shows who receives what.

Coinbase outputReceivesAmount
Pool feeSoloFury1% of the block, fixed for everyone
ManagerYour address for this clientThe quota you agreed, as a percentage of the whole block
ClientThe client’s payout addressThe rest of the block

On the 3.125 BTC subsidy, the pool fee output is 3,125,000 satoshi. You enter your quota as a whole percentage of the block, from 1 to 98. The client receives what remains after our 1% and your quota. Network fees in the block are split in the same proportions.

Fleet Split is true solo mining per client. A block pays only the agreement whose machines found it. Other clients of your fleet receive nothing from that block; their chance comes with their own blocks.

Rounding. The pool stores your quota in hundredths of a percent of the part after the pool fee. A quota of 2% of the block is stored as 2.02% of the 99%, which equals 1.9998% of the block. Reports show the exact value with four decimals.

Before you start

Prepare four things before your first login: a wallet, fresh addresses, your fleet details and a logo.

A wallet that signs messages

  • Sparrow on a computer, with a software wallet or with a hardware wallet such as Ledger, Trezor, Coldcard, BitBox or Jade.
  • Electrum on a computer or on Android.
  • BlueWallet on Android or iPhone.
  • Trezor Suite.

We tested Ledger via Sparrow in October 2026; the steps for the other wallets follow their own documentation. Ledger Live cannot sign messages: connect the Ledger to Sparrow or Electrum instead. Use an address from your own wallet: exchange accounts cannot sign messages.

One fresh address for each client

Use a new bc1q… or bc1p… address of your wallet for every client, used only for that agreement. Your quota for that client arrives there. The client’s machines use it in their username, followed by the machine name, so the pool links every share to this agreement.

Addresses starting with bc1p (Taproot) need a BIP-322 signature. Today Sparrow with a software wallet produces it; hardware wallets sign bc1q addresses.

Your fleet details

Send these details once to [email protected]. We register your fleet and your access address.

ItemExampleWhere it appears
Fleet nameAlpine HostingFleet page, client pages, Telegram
Page addressalpine-hostingsolofury.com/fleet/alpine-hosting/ (lowercase letters, digits and hyphens, 2 to 39 characters)
Access addressa bc1q… address of yoursUsed only to sign in to the console
LogoSVG fileFleet page and every client page
Websitehttps://alpinehosting.exampleFleet page
Public contactemail or Telegram handleFleet page
Public or private pagepublicPublic: visible to anyone, client addresses always masked. Private: hidden.

Your logo

  • Format: SVG, or PNG or WebP of at least 512 × 512 px.
  • Shape: square. Pages show it in a square box of 56 px on the fleet page and 28 px on client pages. For a wide logo, send the symbol or the compact version.
  • Background: transparent, with colors that read on white.
  • Check: the logo stays recognizable at 28 px.

Email template:

To: [email protected]
Subject: SoloFury Fleet: activation of [fleet name]

Fleet name: …
Page address: solofury.com/fleet/…/
Access address: bc1…
Website: … · Public contact: … · Page: public or private
Logo: attached (SVG)

Step 1: Sign in to the console

The console is at solofury.com/fleet/manage/. You sign in with your access address and a signature; there is no password.

  1. Enter your access address and press Continue.
  2. The page shows a message of 5 lines, with Copy and a QR code.
  3. In your wallet, open the “Sign message” tool, choose the access address, paste the message and sign.
  4. Paste the signature (one line of text, often ending with ”=”) and press Sign in.

The session lasts 12 hours. The message expires after 15 minutes; after that, press New message and sign again. The 5 lines are explained in the client guide, which uses the same message format.

Step 2: Add a client

Each client gets an agreement of its own. Press Add client and fill in the form.

FieldWhat to enterWho sees it
LabelA name you recognize, such as “Client 3 · row B”You and the client
Your share (% of the block)The quota agreed with the client, a whole number from 1 to 98. Write 2 for 2%.You and the client
Your address for this clientA fresh bc1q… or bc1p… address of your walletYou and the client; masked on public pages
Machines, model, declared TH/sOptional: for example 20, “S21+ 235T”, 4700You and the client
Internal notesOptionalOnly you

Press Create invitation. The console shows a message for your address for this client: sign it with that address and paste the signature. The signature proves the address is yours.

The declared hashrate drives the “What to expect” box on the client’s invitation page, until the machines connect. Leave it empty if you do not know it yet; you can edit it later.

Step 3: Send the invitation

The console shows the invitation link and a QR code. The link is valid for 24 hours and works once.

Send the link by message or email, or let the client scan the QR. Send the client guide with it. A ready-made message, to adapt:

Hello [name], as agreed your machines will solo mine Bitcoin on SoloFury Fleet. If they find a block, the payout goes straight to your wallet inside the block: [Y]% to you, [X]% to [hosting name], 1% to SoloFury.

Before signing, please read this 5-minute guide: solofury.com/blog/solofury-fleet-split-client/

Then open your invitation (valid 24 hours): [link]

You need a wallet that can sign a message, such as Sparrow, Electrum or BlueWallet. Solo mining is a lottery with known odds: a block may take a long time to come. Write to me for any question.

While you wait, the console lists the invitation under Waiting for the client. You can Withdraw it at any time before the client signs. If 24 hours pass, the invitation expires, the draft agreement is dissolved and your address is free again.

Connect machines to this address only after the client signs. The credentials appear in Step 5, after the client’s signature.

Step 4: What the client does

The client opens the link and completes the agreement in about 5 minutes. The client guide describes every screen; in short:

  1. The client reads your name and logo, the label, the payout split and the validity of the link.
  2. The “What to expect” box shows the odds on the client’s hashrate. The chance of a block in 12 months comes first, then the average time and the client’s part of one block.
  3. The client enters a payout address, signs the 5-line message and pastes the signature.
  4. The client ticks “I understand that solo mining may pay me nothing”, confirms the split and accepts the terms.
  5. The agreement is active. The client downloads a PDF receipt and can activate Telegram alerts without a new signature.

If you are connected to Telegram, the bot tells you when the client signs, and when an invitation expires unsigned.

Step 5: Wait for “Ready”, then copy the credentials

After the signature, the agreement is copied to every Fleet server. This takes about a minute. The console shows the progress in the client row.

StatusMeaningWhat you do
DraftInvitation created, client not signed yetWait for the client
Awaiting confirmationClient signed, activation in progressWait a minute
ReadyThe agreement is on every Fleet server; “Nodes ready” shows the full countCopy the credentials
ActiveShares are arriving from the machinesCheck the machines (Step 7)

When the agreement is ready, the client row shows Machine credentials:

FieldValue
HostThe Fleet servers, listed in the console with Copy buttons
PortsOne port for ASICs, one for small miners, as shown in the console
Usernameyour-address-for-this-client.MACHINE_NAME
PasswordAs shown in the console
Stratum V2Same hosts and ports; the authority public key is shown next to them

Give each machine its own name after the dot, such as .B07. The name appears in the client’s page, in your alerts and in the API.

Step 6: Configure the machines

Point each machine to the nearest Fleet server and set the others as failover.

  1. Pool 1: the Fleet server closest to the machines.
  2. Pool 2: a second Fleet server.
  3. Pool 3: a third Fleet server.

The agreement is on every Fleet server, so failover keeps the three outputs. Use only the hosts and ports shown in the console. On a regular solo port of our pool, your address would mine as plain solo, outside the agreement, and pay only you.

Whole machines or a share of every machine

  • Whole machines. The client sends one or more machines entirely to Fleet. This works with any firmware, including stock firmware.
  • A share of every machine. Braiins OS splits a machine’s hashrate across “pool groups” with a fixed ratio: group 1 for the usual FPPS or PPLNS pool, group 2 for Fleet. If a group is unreachable, Braiins OS moves the hashrate to the others.

Step 7: Check the machines

Within a few minutes, the client row turns Active and the first shares appear. Telegram announces the first worker connected.

Each client card shows the declared hashrate, the measured hashrate over 24 hours and a traffic light:

LightMeasured vs declared
Green90% or more
Yellow70% to 90%
RedBelow 70%

A worker counts as online if it sent a share in the last 30 minutes. Press Edit on the card to change machines, model, declared TH/s or notes; no signature is needed.

The Whole fleet section adds up the measured hashrate of all your clients and shows the odds for the fleet. The expected value of your own quota sits there too, folded, as an average over many years.

Step 8: Telegram alerts

The bot is @SoloFuryFleetBot. It reads the same data as your pages, so nothing changes on the machines.

For you

Connect with the link or QR code we send you at activation, or from the “Telegram alerts” button of your fleet page. You can also add the bot to a group with your technicians. In Settings you choose one of 10 languages and your time zone.

AlertWhen
Worker offline, back onlineNo shares for 10 minutes, grouped by client (threshold adjustable)
Client fully stoppedAll workers of a client stopped
Site outageMany workers stop within 5 minutes: one message, then one when they are back
Hashrate dropLast hour well below the 24-hour average, workers still online
Below declaredMeasured 24 h below 70% of the declared hashrate for over 2 hours, or a worker offline for over 30 minutes; repeated at most every 6 hours
Rejected sharesRejected or stale shares above the threshold in the last hour
Block foundWithin seconds, with the split and the Block Info proof; then mature or orphaned
Invitation signed or expiredWhen a client signs, or a link expires unsigned
Client alertsWhen a client connects or disconnects Telegram
Weekly reportUptime per client, average hashrate, downtime, blocks; CSV attached if enabled

To keep the chat readable: Maintenance silences offline alerts and excludes that time from uptime; Quiet holds alerts during night hours and delivers them afterwards; blocks always arrive at once. The bot sends a limited number of messages per hour; Recent alerts lists what was sent or held back.

For your clients

  • Clients connect by themselves from their page, or at the end of the invitation, with a signature of their payout address. No approval from you is needed; only the client address of an active agreement can connect.
  • Each agreement accepts up to 2 client chats. You receive a message when a client connects or disconnects, without the chat details.
  • Clients receive blocks found, mature and orphaned, their machines below the declared hashrate, and changes to the agreement. Rejected shares and best-share records stay with you.
  • Every client message ends with “Agreement with [your name] · support: [your contact]”. Set the contact in the console under Support contact.
  • The client types /stop to disconnect. When an agreement is dissolved, the bot ends the client’s alerts and says so.

Step 9: When a block is found

The block pays at once in the coinbase; it becomes spendable after 100 confirmations.

  1. Found: within seconds, you and the client receive the alert with the three outputs and a link to the Block Info page. Pages show the block with its status.
  2. Mature: after 100 confirmations, about 17 hours, the bitcoin are spendable in your wallets.
  3. Orphaned: rarely, the network chooses another block at the same height. That block pays nobody, and nobody owes anything. Pages, reports and alerts mark it as orphaned.

All amounts come from the on-chain coinbase. In case of any difference, the blockchain prevails.

Step 10: Block reports in CSV and PDF

The console section Block report produces one line per block found. Choose a period (previous month, this month, this year, all blocks, or from–to), one client or all, then Download CSV or Download PDF.

  • Identity of the block: height, block hash, time found and time matured (UTC), status, confirmations, coinbase txid with a mempool.space link.
  • Amounts in satoshi: block total, subsidy, network fees, pool fee, manager output, client output, with percentages to four decimals and the client’s output number (vout).
  • Reference prices: BTC price in USD and EUR from mempool.space at the time of the block and at maturity, with source and time. They are historical prices for bookkeeping.
  • Totals: mature blocks and blocks waiting for maturity are added up separately; orphaned blocks are listed apart.
  • Integrity: the PDF prints the SHA-256 fingerprint of the matching CSV; the download returns it in the X-SF-SHA256 header.

A period without blocks returns a file with the header only. Each client can download the report of their own agreement from their page.

Step 11: The read-only API key

The API serves the data of your agreements to your own tools: Grafana, spreadsheets, monitoring. It reads; it cannot create, change or dissolve agreements.

  1. In the console, open API key and press Create key.
  2. Copy the key at once: it is shown only once. Copy test curl gives a ready command.
  3. Store it like a password. Regenerate replaces it, Revoke stops it.
EndpointReturns
/v1/meAPI version, role, limits, terms version, key dates, server time
/v1/clientsEach agreement: label, state, declared and measured TH/s, workers online and total
/v1/clients/PARTY_ID/workersWorkers of one agreement, with full names
/v1/blocksThe report lines, 500 per page, with a stable event_id
/v1/hashrateHourly series for 24h, 7d or 30d

Rules: base URL https://solofury.com/api-fleet/v1, GET only, key in the Authorization: Bearer header (a key in the URL is refused), 120 requests per minute (above that, 429 with Retry-After: 60). Dates are ISO 8601 UTC, amounts in whole satoshi, hashrate in TH/s with 2 decimals, missing values as null. Client addresses appear masked, except data already public on-chain in blocks.

KEY=sfk_your_key
curl -s -H "Authorization: Bearer $KEY" https://solofury.com/api-fleet/v1/me
curl -s -H "Authorization: Bearer $KEY" https://solofury.com/api-fleet/v1/clients
curl -s -H "Authorization: Bearer $KEY" "https://solofury.com/api-fleet/v1/blocks?preset=prev-month"
curl -s -H "Authorization: Bearer $KEY" "https://solofury.com/api-fleet/v1/hashrate?range=24h"

A Python script that writes the blocks of the previous month to a CSV file:

import csv, requests
KEY, BASE = "sfk_your_key", "https://solofury.com/api-fleet/v1"
H = {"Authorization": f"Bearer {KEY}"}
me = requests.get(f"{BASE}/me", headers=H, timeout=20).json()
print("API", me["api_version"], "role", me["role"])
for c in requests.get(f"{BASE}/clients", headers=H, timeout=20).json()["clients"]:
  print(c["label"], c["state"], c["measured_24h_ths"], "/", c["declared_ths"], "TH/s")
rows, page = [], 1
while page:
  r = requests.get(f"{BASE}/blocks", headers=H,
                   params={"preset": "prev-month", "page": page}, timeout=30).json()
  rows += r["blocks"]
  page = r["next"]
if rows:
  with open("blocks-previous-month.csv", "w", newline="") as f:
      w = csv.DictWriter(f, fieldnames=list(rows[0].keys()))
      w.writeheader()
      w.writerows(rows)
print(len(rows), "blocks written")

Each client can create a key for their own agreement, with a signature. The client page shows “Manager API: active since … · last access …”, so the client sees when your key reads their data. Fields are removed only with 30 days of notice, announced in /v1/me and in this guide.

Step 12: Dissolve an agreement

An agreement ends when it receives no shares for 7 days on every Fleet server. Until then, a block found with its credentials pays according to the agreement.

  1. Disconnect the client’s machines from the Fleet credentials.
  2. In the console, press Dissolve agreement on the client card. If shares arrived in the last 7 days, the pool refuses; try again after 7 days without shares.
  3. The client’s Telegram alerts end with a message, and the client’s API key stops working.

A client who wants to leave asks you and disconnects the machines. There are no penalties and no minimum duration on our side. To change a quota or an address, dissolve the agreement and create a new one.

Your fleet page and the client page

Your fleet page is at solofury.com/fleet/your-name/, in 10 languages, refreshed every 30 seconds. It shows fleet hashrate, workers online, active clients, blocks, the expected time per block, a chart by client over 24 hours, 7 or 30 days, the clients and the blocks. Client addresses are always masked. A private page stays hidden.

Each client has a page: the Miner page of the agreement with the Fleet panel. It shows your logo and name, the split line by line and the Fleet servers where the agreement is live. Below come the machines with the traffic light, “What to expect”, the blocks with their status, the reports and the API line. The Verify the payout now button reads the real template of the next block and shows the three outputs in satoshi, with a green check when they match the agreement.

Rules in one table

RuleValue
Pool fee1% of the block, fixed
Your quota1% to 98% of the block, whole numbers, fixed for the life of the agreement
Addressesbc1q… and bc1p…; one fresh manager address per agreement
Message to sign5 lines, valid 15 minutes
Console session12 hours
Invitation24 hours, one use, can be withdrawn
CredentialsShown when the agreement is ready on every Fleet server
Maturity100 confirmations, about 17 hours
DissolutionEffective after 7 days without shares
Client Telegram chatsUp to 2 per agreement
APIRead-only, 120 requests per minute
Support[email protected], reply within 1 business day

The full rules are in the Fleet Split terms, version 1.2.

What the numbers say

Each agreement mines for itself, so the odds depend on the client’s hashrate. The table uses the network difficulty of 16 October 2026.

Client hashrateAverage time per blockAt least 1 block in 12 monthsIn 5 years
200 TH/s96 years1.0%5.1%
1 PH/s19 years5.1%23%
2 PH/s9.6 years9.9%41%
5 PH/s3.8 years23%73%

Your quota comes from any client who finds a block, so for you the sum of all agreements counts. The fleet table is on the Fleet overview.

Source: network difficulty 140.58 T, set at block 971,712 on 16 October 2026 (pickaxe.io, phemex.com). Formula: average time = difficulty × 232 ÷ hashrate; chance in a period t = 1 − e−t/T. Network fees excluded.

How we work

  • Non-custodial payout. The three outputs are in the coinbase we build; the network creates the bitcoin at the parties’ addresses.
  • Ownership by signature. You and the client prove each address with a signed message. A signature proves ownership and contains no amount, recipient or transaction.
  • Agreement on every server. Credentials appear only once every Fleet server carries the agreement.
  • Announced changes. Software updates that may interrupt mining are announced 7 days ahead on pages, Telegram and email; security fixes are applied at once and announced afterwards.

Conclusion

Fleet Split takes one email to start and about 10 minutes per client: one form, two signatures, one link. From then on, each block pays you, your client and us in the coinbase, and every number on your pages, reports and API comes from the chain. Send your clients the client guide with the invitation: it answers most of their questions before they sign.

Activate your fleet

Every block pays 1% to us, your quota to you and the rest to your client, in the coinbase. Write to [email protected] with your fleet name and access address.

Open the console →

Read next

Frequently Asked Questions

What happens if my client enters a wrong payout address?

The client signs the message with the address they enter, so the address must belong to a wallet they control. A typo in the address makes the signature fail, and the agreement is not created. If a client later wants another address, you dissolve the agreement and create a new one.

Can I change my quota after activation?

The quota is fixed when the client signs. To change it, disconnect the machines, dissolve the agreement after 7 days without shares and send a new invitation with the new quota. The client signs again.

What if machines mine with the credentials before the agreement is ready?

The console shows the credentials only when the agreement is ready on every Fleet server. If a block were found with the credentials of an unconfirmed agreement, the software pays it to our fee address; within 7 days of maturity we send the manager and client parts to the two addresses, net of our 1% and of the transfer's network fee, and publish the txid on both pages (terms, section 4).

Does failover between servers keep the split?

Yes. The agreement is copied to every Fleet server before the credentials appear, so a machine that switches to pool 2 or pool 3 keeps the same three outputs.

How do I show a client that the split is real?

Open the client page together and press Verify the payout now: it reads the real template of the next block and shows the three outputs in satoshi. The PDF receipt lists the three addresses and both signatures.

How do I account for my quota?

Your quota arrives in the coinbase at your address for that client. The block report in CSV or PDF lists the txid, your output in satoshi and reference BTC prices in USD and EUR at the block and at maturity. Invoicing and taxes follow your own agreement and local rules.

What happens if SoloFury closes the Fleet service?

We announce it with 30 days of notice. Blocks already found are already in the wallets of the parties, so there are no balances to return.

Are legacy addresses starting with 1 or 3 accepted?

Today Fleet accepts bc1q and bc1p addresses. Support for addresses starting with 1 or 3 is planned with a future software update, without a date yet.