# BloomGauge (formerly Bloomkeeper) > In plain words: some Macs can earn a little money in the background by running AI for other people through a network called Darkbloom; BloomGauge is a free app that sets that up in a few clicks, shows what the Mac is earning, and keeps it running. Beginner guide: https://bloomgauge.io/help/make-money-with-your-mac > > BloomGauge (formerly Bloomkeeper, and before that Bloom) is a free Mac app for Darkbloom providers on Apple Silicon, with a source-available core on GitHub (PolyForm Shield license; versions up to 1.36.63 were MIT); some newer features are not public. It is not open source. It shows a Mac's live and confirmed Darkbloom earnings per model and hour, network demand for each model, and hardware health, and its Manager picks the best-paying model for that Mac and switches only on strong network evidence (setup turns it on; it can be turned off any time). It can also set up Darkbloom on a new Mac for you, with no Terminal needed: it checks the Mac, downloads Darkbloom from Darkbloom's server, checks its checksums, Apple signature and notarization, and starts serving; the user signs in to Darkbloom in the browser. It is independent and not affiliated with or endorsed by Darkbloom. - Latest version: 1.36.70 beta 51 (Developer ID signed and notarized by Apple). - Requirements: BloomGauge runs on macOS 14+. To earn with Darkbloom you need an Apple Silicon Mac with 48 GB+ memory. Darkbloom accepts macOS 26, but update to macOS 27 first: it skips the MDM profile step, which Darkbloom is retiring. BloomGauge checks these before it installs anything. It can install Darkbloom for you; you sign in to Darkbloom in your browser. Setup step by step: https://bloomgauge.io/help/how-to-set-up-darkbloom-mac - What it does: live and confirmed earnings per model and hour with base rewards shown separately; network demand per model; Darkbloom setup done for you, no Terminal needed; a Manager that picks and keeps the best-paying model loaded (you can turn it off any time), recovers from failed loads and stalls, and switches only on strong network evidence; private phone access over Tailscale; up to ten Macs in one view. - Download: https://bloomgauge.io/#release. Source: https://github.com/cookder/bloomgauge. Support: support@bloomgauge.io and #bloomgauge in the Darkbloom Slack. - Full text of every help article: https://bloomgauge.io/llms-full.txt ## Can my Mac make money while it’s idle? A plain-English guide URL: https://bloomgauge.io/help/make-money-with-your-mac · Updated 2026-10-03 Short answer: some Macs can earn a little money in the background by running AI for other people through a network called Darkbloom. BloomGauge is a free app that sets that up for you in a few clicks, shows what your Mac is earning, and quietly keeps it running so it doesn’t sit there earning nothing. It only works on fairly powerful Macs, it uses electricity, and for most people it is pocket money, not an income. Please don’t buy a Mac for this. ### What actually happens People and apps around the world send questions to AI models (the same kind of thing as a chatbot). Darkbloom sends some of those requests to Macs like yours. Your Mac keeps an AI model loaded in its memory, answers the requests it is sent, and Darkbloom pays for each answer. It also pays a small reward just for staying online and ready. The requests arrive encrypted, and you don’t have to watch or do anything while it runs. ### Which Macs can do it - BloomGauge runs on macOS 14+. To earn with Darkbloom you need an Apple Silicon Mac with 48 GB+ memory. Darkbloom accepts macOS 26, but update to macOS 27 first: it skips the MDM profile step, which Darkbloom is retiring. - In practice that means a higher-end MacBook Pro, Mac Studio or Mac mini with lots of memory. Most MacBook Airs and base-model Macs don’t have enough. - Already a Darkbloom provider on a smaller Mac? With 24 GB or less, expect little or no earnings: these Macs almost never get a model loaded right now. With 25–47 GB, only small models fit, and they usually earn very little. - Check yours: Apple menu → About This Mac. Look for an M-series chip and the memory figure. - BloomGauge checks all of this before it installs anything, so you won’t end up half set up on a Mac that can’t earn. ### What to honestly expect - A little money, not an income. Right now there are far more Macs on the network than requests, so most Macs are idle much of the time. - Bigger Macs (more memory, faster chips) get more of the work. Smaller eligible Macs often earn very little. - Earnings go up and down with demand through the day. Nobody can promise an amount, and we don’t. - Your Mac has to stay on, awake and plugged in. A laptop that sleeps in a bag earns nothing. - For real numbers by memory size and what the base reward pays, see “Is Darkbloom worth it on a Mac?”. ### What it costs you - Electricity. A Mac running AI uses more power than one sitting idle. Depending on your electricity price, that can eat a good share of what it earns. See “Darkbloom electricity cost on a Mac” to work it out for your Mac; BloomGauge can show it too. - Some of your Mac’s memory and speed while a model is loaded. Heavy use of the Mac at the same time can cost earnings. - Darkbloom installs software to verify your Mac is genuine. Read what it installs and what it can see in “Is Darkbloom safe on a Mac?” before you start. ### How to start (a few clicks) 1. Download BloomGauge (free) from bloomgauge.io and open it. 2. It checks your Mac. If anything is missing, like a macOS update, it tells you. 3. Press Agree and set up. BloomGauge downloads and sets up Darkbloom for you. 4. Create a Darkbloom account in your browser (or sign in to yours). That’s the only account you need. 5. The AI model finishes downloading in the background. Once it’s loaded and Darkbloom has approved your Mac, it starts earning. ### What BloomGauge does after that - Shows what your Mac is earning, live and day by day, on your Mac or your phone. - Keeps it running: if the Mac stops getting work or Darkbloom gets stuck, BloomGauge notices and fixes the usual problems on its own. - Keeps the AI model that pays best on your Mac loaded, so you don’t have to pick one. - Tells you on your phone if the Mac goes offline, if you turn that on. ### Who’s behind it BloomGauge is an independent app, not made by Darkbloom and not affiliated with it. It is free, with a source-available core on GitHub. Darkbloom pays you directly through your Darkbloom account; BloomGauge never touches your money. ### How BloomGauge helps BloomGauge helps your Mac earn money running AI in the background, and makes sure it keeps earning. It sets up Darkbloom in a few clicks, shows what your Mac earns, and quietly keeps it running. ### Questions **Can I make money with my Mac while it’s idle?** Some Macs can earn a little by running AI for other people through Darkbloom. You need an Apple Silicon Mac with 48 GB or more memory, kept on and plugged in. For most people it is pocket money, and electricity takes part of it. **How do I rent out my Mac for AI?** Through Darkbloom, a network that sends AI requests to Macs and pays for the answers. The free BloomGauge app sets it up for you in a few clicks: it checks your Mac, installs Darkbloom, and you create a Darkbloom account in your browser. **Is it passive income?** It runs in the background without you doing anything, but the amount is small and changes with demand. Nobody can promise an amount. Don’t buy a Mac for it. **Does it work on a MacBook Air?** Usually not. You need 48 GB or more of memory, which most MacBook Airs and base-model Macs don’t have. BloomGauge checks before it installs anything. **Do I need to use Terminal?** Normally no. BloomGauge sets up Darkbloom for you; you only create a Darkbloom account in your browser. --- ## Why is my Mac online but not getting Darkbloom jobs? URL: https://bloomgauge.io/help/darkbloom-mac-not-getting-jobs · Updated 2026-09-29 Short answer: run darkbloom status and check the Trust line says hardware / online; then send a self-routed test request, run darkbloom stop and darkbloom start, and reboot if nothing arrives within a few minutes. A Darkbloom provider can look healthy, online and with a model loaded, and still receive no paid work for hours. Other providers see the same thing. Most cases have one of a few causes, and most are fixed by a clean restart. ### 1. Check the basics first 1. Run darkbloom status in Terminal. The provider should be running, signed in and serving a model. 2. Make sure the Mac is awake and on power. A sleeping Mac drops off the network and gets no work. 3. Check that your Mac appears in Darkbloom’s provider list in the console. Right after a restart it can take a few minutes to show up again. ### 2. Routing stall: online, but the network stopped sending work The most common case. Your Mac is connected, but the coordinator has stopped routing requests to it. Providers in the Darkbloom Slack reported it every week of September 2026, lasting from 20 minutes to more than a day. These fix it, in order of effort: 1. Send your Mac a self-routed test request: a normal request to api.darkbloom.dev with the header X-Darkbloom-Route: self (or an API key set to use only your own machine). It goes through the coordinator to your Mac, is free, and providers report it often gets paid work flowing again. 2. Stop and start the provider: darkbloom stop, then darkbloom start. Let the start finish (see the drain note below), then give it a few minutes. Providers report this works more often than darkbloom restart. 3. If that doesn’t help, reboot the Mac. ### Earning base rewards but no paid jobs Base rewards only need a loaded model and a steady connection, so they keep arriving while routing is stuck. Paid requests also need the coordinator to consider your Mac verified and routable. So “only base rewards for hours” usually means a routing stall (above) or pending verification (below), not a problem with your model. Note that Darkbloom’s earnings page counts base-reward rows as jobs, so a rising job count does not prove paid work is arriving. ### Online is not the same as verified Run darkbloom status and look at the Trust line. hardware / online means the coordinator can route public work to your Mac. self_signed, pending App Attest or untrusted means it is connected but not being sent paid requests. See the verification article below for the fix. ### 3. The provider is drained after a restart Since Darkbloom 0.9.9, darkbloom start and restart first drain: new work is refused while accepted requests finish, for up to 10 minutes by default. If that wait times out, the provider can stay running but drained, and it serves nothing until it is restarted again. See the drained provider article below. ### 4. The coordinator’s record of your Mac is stale A model_not_loaded reply for a model that is loaded means Darkbloom’s coordinator has an old picture of your Mac. A restart makes the provider reconnect and report its current state. ### 5. Nobody is asking for your model right now Demand moves between models through the day, and in late September 2026 Darkbloom had far more Macs than requests (network utilization around 7%). Requests go to the Mac expected to answer fastest, so smaller Macs (24–32 GB) often serve nothing. When the model you run goes quiet, a healthy Mac still earns little. Switching to a model with steadier demand helps (see which model to run). ### 6. A problem on Darkbloom’s side Sometimes many providers stop at once, for example on September 25, 2026, when a verification change in Darkbloom 0.9.9 dropped many Macs for about an hour. Darkbloom’s status page (status.darkbloom.dev) checks only its own servers and model availability, not whether your Mac is being routed work, so it can stay green during these. If restarts don’t help, check the #providers channel in the Darkbloom Slack before changing anything else. ### How BloomGauge helps BloomGauge notices when steady paid work stops and recovers on its own: it restarts a provider left drained, waits out the drain, restores the model that pays best on your Mac, and tells you if that doesn’t work. ### Questions **Why does my Darkbloom provider say online but earn nothing?** Usually the coordinator has stopped routing work to the Mac (a routing stall), the provider is still drained after a restart, or demand for your model has dropped. Restart the provider with darkbloom restart and let it finish; if nothing arrives within a few minutes, reboot the Mac. **Why do I get only base rewards and no Darkbloom jobs?** Base rewards need only a loaded model and a steady connection, while paid requests also need the coordinator to route to your Mac. Hours of base rewards with no paid work usually mean a routing stall or pending verification. Send a self-routed test request, then run darkbloom stop and darkbloom start, then reboot. **Does sending my own request to the model help?** A self-routed request through api.darkbloom.dev (header X-Darkbloom-Route: self) goes through the coordinator and is reported to help. A plain local request to 127.0.0.1 does not, because it never passes through the coordinator. **The Darkbloom status page is green. Why is my Mac getting nothing?** The status page checks Darkbloom’s servers and model availability, not whether your Mac is verified and being routed work. Check the Trust line in darkbloom status. **What does model_not_loaded mean when my model is loaded?** Darkbloom’s coordinator has a stale record of your Mac. Restarting the provider makes it reconnect and report its current state. --- ## Darkbloom verification pending: MDM, App Attest and trust on macOS 27 URL: https://bloomgauge.io/help/darkbloom-verification-pending-app-attest · Updated 2026-09-29 A Mac can be online, with a model loaded, and still get no paid requests because Darkbloom has not verified it. Verification was the most common provider problem in September 2026, especially while Macs moved from Darkbloom’s MDM profile to Apple’s App Attest on macOS 27. Everything below comes from Darkbloom’s own provider docs (links at the end). ### Check where your Mac stands - Run darkbloom status and read the Trust line. hardware / online means verified: the coordinator can route public work to your Mac. - self_signed / online with “awaiting MDM verification”, or App Attest shown as pending, means connected but not yet verified. The Mac gets no public paid work, though it can still earn base rewards. - Any level followed by / untrusted and a reason means the coordinator stopped routing to your Mac. - Run darkbloom doctor for the local side. Its APP ATTEST section shows whether a key is stored and enrolled, any key cooldown, and whether the provider runs in the logged-in session. ### macOS 27: App Attest instead of the MDM profile - Since Darkbloom 0.9.7, Macs on macOS 27 or later can be verified with Apple’s App Attest, without installing Darkbloom’s MDM profile. New setups on macOS 27 skip the profile. - Darkbloom says its MDM will be switched off, so it recommends upgrading to macOS 27. - Already enrolled with MDM? Upgrading macOS does not remove the profile. Update the provider, restart it and check darkbloom status. Keep the profile until Darkbloom reports that removal is ready. - Then remove it only with darkbloom unenroll, choosing the App Attest option, in an interactive Terminal window. Removing the profile yourself first is a common way providers lost verification in September. - Company-managed Macs keep their employer profile; they don’t need Darkbloom MDM for App Attest. ### What verification needs - System Integrity Protection on, and Secure Boot at Full Security (both changed only in Recovery). - A user logged in at the Mac’s screen, not just over SSH. Turn on automatic login, turn off log out when idle, and keep the Mac from sleeping, so it can verify again after a reboot. - A current provider version that Darkbloom has approved. The provider updates itself, so check verification again after an update or a macOS upgrade. - A release version of macOS. Darkbloom staff have said App Attest doesn’t work on macOS betas. ### Common triggers - A reboot or power cut with nobody logged in at the screen. - An overnight provider update or a macOS upgrade. - Sleep and wake: every reconnect has to pass verification again. - Removing the MDM profile before Darkbloom confirmed App Attest. ### How to get verified again 1. Log in at the Mac’s screen and run darkbloom doctor. Fix anything it flags in the attestation checks. 2. Keep the provider running. When Apple’s check fails for a moment, Darkbloom retries on its own after one minute, then five, then every ten minutes. It can take a while, and waiting is often all that’s needed. 3. Restart the provider (darkbloom restart) so it re-registers, then check darkbloom status again. 4. Make sure the provider is up to date. Several September releases (0.9.8 to 0.9.10) fixed App Attest getting stuck. 5. On macOS 27, don’t install the MDM profile or delete saved credentials to get around a pending App Attest check. Darkbloom’s docs say to diagnose with darkbloom doctor instead. 6. Still stuck after a day? Check GitHub issue #1161 and the Darkbloom Slack; others may be hitting the same thing. ### Sources - Darkbloom provider attestation guide: github.com/Layr-Labs/d-inference/blob/master/docs/provider/attestation.md - Darkbloom troubleshooting: github.com/Layr-Labs/d-inference/blob/master/docs/provider/troubleshooting.md - Release notes (0.9.7 App Attest without MDM; 0.9.8–0.9.10 fixes): github.com/Layr-Labs/d-inference/releases - App Attest pending on macOS 27: github.com/Layr-Labs/d-inference/issues/1161 ### How BloomGauge helps BloomGauge shows live whether paid work is reaching your Mac and what it earns each hour, so a Mac that is online but no longer verified shows up as paid work stopping, not as a silent gap in next week’s payout. ### Questions **What does self_signed mean in Darkbloom?** Your Mac is connected but Darkbloom has not finished verifying it, so it is not sent public paid requests. On macOS 27 verification uses App Attest; on older macOS it uses Darkbloom’s MDM profile. Check darkbloom status and darkbloom doctor. **Do I still need the Darkbloom MDM profile on macOS 27?** Not for new setups: since Darkbloom 0.9.7, macOS 27 Macs can be verified with App Attest. If your Mac already has the profile, keep it until Darkbloom reports removal is ready, then remove it with darkbloom unenroll and the App Attest option. **Why is Darkbloom App Attest verification pending for hours?** Common causes are nobody logged in at the Mac’s screen, an outdated provider, a macOS beta, or a recent reboot or update. Log in, run darkbloom doctor, update the provider and restart it. Darkbloom retries on its own, so a working setup may just need time. **Does Darkbloom verification work over SSH or on a headless Mac?** No. App Attest needs a user logged in at the Mac’s screen. Turn on automatic login and turn off auto-logout, so the Mac can verify again after a reboot. --- ## Darkbloom provider stuck draining after a restart URL: https://bloomgauge.io/help/darkbloom-provider-stuck-draining · Updated 2026-09-26 Darkbloom 0.9.9 changed how the provider restarts. darkbloom start and darkbloom restart now drain first, so requests already accepted can finish. That protects in-flight work, but a restart that is cut short can leave the Mac drained: running, online, and serving nothing. ### How draining works - New requests are refused as soon as the drain starts. - Requests already accepted are allowed to finish, for up to 600 seconds by default (--timeout). - Then the provider restarts with the new settings. --force skips the wait and cancels accepted requests. ### Signs your provider is stuck drained - The provider process is running, but no paid requests arrive for a long time. - No model is warm in the provider’s status even though one is configured. - The last thing that happened was a restart, a model switch or a tool that restarts Darkbloom for you with a short time limit. ### Fix 1. Run darkbloom restart and let it run to the end. Don’t interrupt it, and don’t wrap it in a script that gives up after a minute. 2. Run darkbloom status and check that a model is loaded and the provider is serving. 3. If a script or app restarts Darkbloom for you, make sure it waits at least as long as the drain timeout. ### How BloomGauge helps BloomGauge 1.36.48 and later waits out the drain when it switches models, and restores a provider it finds left drained. ### Questions **Why did my Darkbloom provider stop serving after a restart?** Since 0.9.9, restart drains first. If the drain is cut short or times out, the provider can remain drained and serve nothing until it is restarted again and allowed to finish. **How long does a Darkbloom restart take now?** Up to the drain timeout, 600 seconds by default, when requests are in flight. With no accepted requests it is much faster. **Should I use --force?** Only when you accept cancelling requests that are in progress. It skips the drain wait. --- ## Why BloomGauge rarely switches models (and when it does) URL: https://bloomgauge.io/help/why-bloomgauge-holds-one-model · Updated 2026-10-02 Short answer: chasing live demand has paid less than staying put. On our test Mac, even perfect hindsight (the best model every hour) would have added only about 6% over holding Gemma, and every rule that has to decide in real time came out about break-even or worse. So the Manager holds one home model and moves only on strong, sustained evidence. The numbers below come from one Mac with real pay plus public Darkbloom network data for other hardware, so treat them as a first read, not a law. ### “That model is quiet right now, why not switch?” Because by the time a switch pays off, the moment has usually passed. Busy stretches on a model typically last 20 to 30 minutes, and once one is 30 minutes in, only 17–50% carry on for another hour. A switch also costs time: about 7 minutes of paid work, plus about one 5-minute base-reward period while the new model loads. Even with a perfect pay estimate, the best real-time switching rule on our test Mac earned about the same as just holding Gemma. ### What the replays found - On our test Mac, perfect hindsight (the best model every hour, Sep 11–30) would have added only about 6% over holding Gemma. On big Macs that ceiling is larger, but no rule we tested captured it. - In a 20-day replay, 38 of 43 spike trips paid less than staying on Gemma. - A first replay on about 2 days of public network data lost on every hardware type tested, and lost more on big Macs, whose Gemma home pays more and so costs more to leave. - BloomGauge’s earlier pay estimate for non-Gemma models ran 46–138% too high on days it hadn’t seen. It is now corrected against each Mac’s own results. - On our test Mac, the old demand-chasing optimizer earned about 16% less than holding Gemma. The current Manager comes within about 3% (early days). - In public network data, the home model picked on the first half of the period was still the best on the second half for 24 of 29 hardware types (list prices, about 3 days). ### Switching has hidden costs - Loading a new model takes the Mac out of the running for paid work for a minute or two, and pay takes a while to get back to normal. All told, about 7 minutes of paid work plus about one 5-minute base-reward period per switch. - The first paid job can be slow to arrive: 10 of 61 Gemma restarts on our test Mac (16%) waited more than 10 minutes for one. - Those costs are small on their own. They add up when a spike ends before the new model has earned them back. ### An independent test: one model beats two An independent study published by an Eigen Labs account tested part of this directly, on one M4 Max (64 GB), about two hours per setup. In its pre-registered A/B test, Gemma alone earned about twice as much per hour as Gemma with a second model loaded beside it, even when that second model got almost no requests. With gpt-oss as the second model, Gemma’s requests fell to about a fifth. A separate, exploratory analysis from the same study found the dip in pay right after a switch was short, a few minutes. That fits our own finding: what makes a switch expensive is the load time and the base-reward period, plus spikes ending before the switch pays back, rather than a long ramp. One Mac, so treat it as a strong hint rather than a rule. Source: Darkbloom provider economics (Research Commons), CC BY 4.0, github.com/brandon-eigenlabs/darkbloom-provider-commons (datasets ds-89931087 and ds-4396bb1d for the A/B test, ds-0cbdbf3e for switch cost). ### How the Manager picks a home The home model is your pick if you pinned one; otherwise it is the model that has paid best on this Mac over the last 30 days. Until a Mac has 3 days of its own history, BloomGauge starts from what pays best on Macs with the same chip and memory. On almost every Mac with 36 GB or more that has been Gemma 4 26B; on 32 GB Macs it has been gpt-oss-20b. ### When it does move - With “Switch to better models when network evidence is strong” on (the default), it leaves home only when at least five Macs like yours have clearly earned more on another model for two hours in a row. At most 3 moves a day. - Before it changes your home model it tells you first, with a one-tap Keep current button. - It comes back when the evidence fades or the other model pays less than home would, and it turns these moves off on its own if they haven’t clearly paid off. - It runs no blind trials of other models. ### What it does instead: keeps the home model earning Most lost earnings come from a Mac that stops working, not from the wrong model. Keep this Mac earning watches for that and runs stall recovery: a test request first, then a restart, within limits. In one public Darkbloom issue, 43 of 44 affected Macs recovered within 1–3 minutes of a restart. Recovery also waits out the short network-wide dip that often follows a Darkbloom update (after 7 of 14 recent Darkbloom provider updates, the number of Macs ready for work dropped by 10% or more within 2 hours, not counting dips that coincided with a coordinator restart; about 12% of ordinary 2-hour windows show a similar dip, so it’s a pattern, not proof). Keeping a model loaded matters too: in public network snapshots, about 30% of online Macs had no model loaded, which earns no base reward. ### If you want to chase demand anyway You can. Turn the evidence switch off and switch models yourself from model controls, or pin a different home. BloomGauge’s demand alerts tell you when a model gets unusually busy. Just know that, so far, the data says those trips more often lose than win. ### What this data can’t tell you yet Real pay comes from one Mac; other hardware comes from public request data priced at list rates, over a few days. Big Macs show a larger hindsight ceiling, so a per-hardware, dollar-based switching rule may pay there later. A longer public data collection is running, and this article will be updated as it lands. ### How BloomGauge helps BloomGauge’s Manager holds one home model (usually Gemma 4 26B on 36 GB and up), moves only when Macs like yours have clearly earned more elsewhere for two hours, tells you first with Keep current, and spends its effort keeping the home model loaded and recovering stalls. ### Questions **Why doesn’t BloomGauge switch to whichever Darkbloom model is busy right now?** Busy stretches usually end within 20–30 minutes, before a switch pays back its cost. In replays, 38 of 43 spike trips paid less than staying on Gemma, and even perfect hindsight added only about 6% on our test Mac. **Does BloomGauge ever switch Darkbloom models?** Yes, when at least five Macs like yours have clearly earned more on another model for two hours in a row, at most 3 times a day. It tells you first and offers Keep current. **Can I switch models myself?** Yes. Use model controls, pin a different home model, or turn off “Switch to better models when network evidence is strong”. **How much does switching a Darkbloom model cost?** About 7 minutes of paid work plus about one 5-minute base-reward period per switch on our test Mac, and more when the first paid job is slow to arrive. --- ## Which Darkbloom model should I run on my Mac? URL: https://bloomgauge.io/help/which-darkbloom-model-to-run · Updated 2026-10-03 Short answer: run Gemma 4 26B (QAT 4-bit) on its own as your steady earner if your Mac has 32 GB or more, keep gpt-oss-20b as the fallback, and treat a large Qwen (Qwen3.5 or Qwen3.6 35B, 36 GB and up) as an alternative, not something to chase: switching to follow demand spikes has usually paid less than staying on Gemma (see why BloomGauge rarely switches models). On a 64 GB Mac every current model fits. What a model pays depends on how many people are asking for it right now and how many other Macs already serve it. That changes through the day, so there is rarely one right answer for long. These rules of thumb come from weeks of Darkbloom history measured by BloomGauge. ### Three kinds of model - Steady earners. Gemma has carried most of the paid work on our test Mac (about 82% of its token revenue in September). Run a steady earner most of the time. - Spike models. Large Qwen models get occasional rushes of paid requests, and can pay more than $0.30 an hour while a rush lasts, then go quiet. - Fallbacks. gpt-oss almost always has some demand. It usually pays less, but beats sitting idle when the main earners fade. ### Gemma alongside other models Darkbloom’s open-source coordinator can make Gemma 4 a dedicated model, so that public Gemma requests only go to Macs that advertise nothing else. Darkbloom staff said in August 2026 that this setting is turned off on the live network, and providers who serve several models report getting Gemma requests too. Running one model is still usually best, because models loaded together share memory and memory bandwidth. In Darkbloom’s public stats (polled every 10 minutes, Sep 24–Oct 1, 2026), Macs offering Gemma plus other models got only about 0.3× the Gemma requests per hour of Gemma-only Macs, mostly because they spent half their time serving the other model, and earned about half as much per hour overall. ### Which models fit, by memory Free memory needed when the model loads, and the smallest Mac where it loads with nothing else running, from Darkbloom’s hardware requirements (September 2026). Re-check with darkbloom models catalog, because the catalog changes. Fitting is not the same as earning: in Darkbloom’s public stats (early October 2026), 24 GB Macs almost never had a model loaded, and 32–36 GB Macs usually earn very little. New providers need 48 GB or more. | Model | Free memory at load | Smallest Mac | |---|---|---| | gpt-oss-20b | 18.0 GiB | 24 GB (tight) | | Gemma 4 26B (QAT 4-bit) | 23.9 GiB | 32 GB | | Qwen3-VL 30B A3B | 27.0 GiB | 32 GB (tight) | | Qwen3.5 35B A3B | 29.9 GiB | 36 GB | | Qwen3.6 35B A3B | 30.3 GiB | 36 GB | | Gemma 4 26B (8-bit) | 37.8 GiB | 48 GB | ### What to run, by memory - 24 GB: gpt-oss-20b, kept loaded for the base reward. Larger Macs win most requests. - 32–36 GB: Gemma 4 26B QAT on its own is the usual choice; Qwen3.5 35B fits from 36 GB. - 48 GB: every 4-bit model fits. Run Gemma 4 26B alone as the steady earner; a large Qwen is the alternative if Gemma doesn’t pay on your Mac. - 64 GB and up: the same choice, with room to keep a second model ready for switching. Models loaded together share memory bandwidth, so one model usually serves faster. - BloomGauge runs on macOS 14+. To earn with Darkbloom you need an Apple Silicon Mac with 48 GB+ memory. Darkbloom accepts macOS 26, but update to macOS 27 first: it skips the MDM profile step, which Darkbloom is retiring. ### Memory decides what fits The model has to fit in your Mac’s unified memory next to everything else. macOS keeps the last model’s files in its file cache and Darkbloom counts that as in use, so a large model can refuse to load right after a switch even though it would fit. Clearing the file cache (sudo purge) before loading fixes that. ### Measure it on your own Mac Pay depends on your chip, memory and how many other providers serve the same model, so numbers from someone else’s Mac only go so far. Run a model for a few hours at different times of day before you decide it doesn’t pay. ### How BloomGauge helps With Manager on, BloomGauge holds the model that has paid best on your Mac over the last 30 days (or, on a new Mac, what pays best on Macs with the same chip and memory), and moves only when at least five Macs like yours have clearly earned more on another model for two hours. ### Questions **What is the best Darkbloom model to run?** It changes with demand and with your Mac. Gemma has been the steadiest earner on Macs with 36 GB or more (usually best run on its own), large Qwen models can pay more during demand spikes (though switching to chase them has usually lost), and gpt-oss is a dependable fallback when the others are quiet. **Which Darkbloom model should I run on a 64 GB Mac?** Every current catalog model fits on 64 GB. Gemma 4 26B, run on its own, has been the steadiest earner; large Qwen models can pay more during spikes, but chasing them has usually paid less than holding Gemma; gpt-oss-20b is the fallback. Compare what each actually pays on your Mac over a few days, or let a manager such as BloomGauge do it. **Why won’t a large Darkbloom model load on my Mac?** Often because macOS is still holding the previous model’s files in its file cache, which Darkbloom counts as used memory. Clearing the cache with sudo purge before loading usually fixes it; otherwise the model is too large for your Mac’s memory. --- ## How much can a Mac earn on Darkbloom? URL: https://bloomgauge.io/help/darkbloom-earnings-mac · Updated 2026-09-26 There is no fixed rate. Darkbloom pays for the requests your Mac actually serves, so earnings go up and down with demand. Anyone who promises a number for your Mac is guessing. ### What changes your earnings - The model you run and how much demand it has at the moment. This moves most. - How many other Macs serve the same model, since they share its requests. - Your hardware: chip and memory decide which models fit and how fast they answer. - Uptime. A Mac that sleeps, reboots or sits drained earns nothing during those hours. ### A reference point On the Mac BloomGauge is developed on, the steadiest model has earned around $0.13–0.18 an hour in typical periods, and large Qwen models more than $0.30 an hour during demand spikes. Quiet hours earn much less. BloomGauge’s default goal is $0.12 an hour. Treat these as one Mac’s history, not a forecast. ### Confirmed credits versus estimates Only credits in your Darkbloom account are money earned. Hourly paces, forecasts and “if this continues” numbers, in any tool, are estimates. ### How BloomGauge helps BloomGauge shows confirmed credits separately from its live estimates, breaks earnings down by model and hour, and reports how many hours met your target. ### Questions **How much does Darkbloom pay per hour on a Mac?** It varies with the model, demand and your hardware. On one test Mac, typical periods earned around $0.13–0.18 an hour and demand spikes on large Qwen models more than $0.30 an hour; quiet hours earn much less. **Why did my Darkbloom earnings drop?** Most often demand for your model fell, more Macs started serving it, or the Mac stopped receiving work (sleep, a routing stall or a drained provider). --- ## Darkbloom model won’t load: not enough memory URL: https://bloomgauge.io/help/darkbloom-model-wont-load-memory · Updated 2026-09-26 Switching to a larger Darkbloom model sometimes fails with a memory error right after another model ran, even on a Mac with enough memory. ### Why it happens macOS keeps recently read files, including the last model’s weights, in its file cache. Darkbloom counts that memory as in use when it decides whether a model fits, so the cache can block a model that would otherwise load. ### Fix 1. Stop or switch away from the current model. 2. Clear the file cache: run sudo purge in Terminal and enter your Mac password. 3. Load the larger model again. 4. If it still fails, close memory-heavy apps. If it fails with nothing else running, the model is too big for this Mac. ### How BloomGauge helps With your one-time permission, BloomGauge clears the file cache before every model switch (it is allowed to run only the purge command) and counts that memory when it checks whether a larger model fits. ### Questions **Why does Darkbloom say not enough memory when my Mac has enough?** macOS is holding the previous model’s files in its file cache and Darkbloom counts that as used memory. Run sudo purge, then load the model again. **Is sudo purge safe?** Yes. It only empties the file cache; macOS reloads files from disk as needed. The next few file reads are a little slower. --- ## Darkbloom “machine_busy” or “your machine is at capacity” while the Mac is idle URL: https://bloomgauge.io/help/darkbloom-machine-busy-qwen · Updated 2026-09-29 Short answer: machine_busy comes from Darkbloom’s coordinator, not from your Mac. It means the coordinator’s own record says your Mac has no free slot for that model, and that record can say “full” while the Mac sits idle. Providers reported it again and again in late September 2026, mostly on Qwen 3.6 35B. Darkbloom hasn’t published a cause for those reports. Below is what the message means in Darkbloom’s open-source code (links at the end), what you can check and what to try. ### Where the message comes from - You only see machine_busy on a self-routed request: one sent with the header X-Darkbloom-Route: self, or with a key set to use only your own Mac. Darkbloom’s API docs list it as a 429 reply with a Retry-After header, sent when your own machine is at capacity. - There are two versions. “your machine is at capacity — retry shortly” means the coordinator’s queue was already full. “your machine is at capacity (timed out waiting for a free slot) — retry shortly” means the request waited in the queue and no slot opened in time. - Other customers’ requests never show you this. When the coordinator thinks your Mac is full, it just sends their requests to another Mac, so the same problem shows up only as missing paid work. ### Why an idle Mac can look full Before sending a request, the coordinator checks whether your Mac has room for it. Darkbloom’s routing docs list three capacity checks, and any one of them can mark an idle Mac as full: - Concurrency (no_headroom): the Mac, or the model’s slot, already has as many requests as it is allowed. - Token budget (free_memory): the coordinator counts each request’s prompt plus its max_tokens, the most it may write, against the token budget your Mac reports. A request that asks for a very large max_tokens can fill that budget even if it will use far less. - Recent refusals (capacity_cooldown): after your Mac turns a request away for capacity, the coordinator stops trusting the budget it reports until a new heartbeat shows room and a request is accepted, or 5 minutes pass. Five capacity refusals within 60 seconds, with no success in between, also pause your Mac for that model for 2 minutes, doubling each time up to 10 minutes. ### What providers reported on Qwen 3.6 In the Darkbloom Slack in late September 2026, several providers serving Qwen 3.6 35B saw machine_busy on self-routed tests while the Mac was idle and its local endpoint answered normally. Paid work came in bursts, then stopped for up to an hour, and a self-routed nudge didn’t help. Providers asked Darkbloom to check how the coordinator tracks free capacity; no answer had been posted by September 29. Separately, a provider’s analysis of Qwen 3.8 27B (GitHub issue #1250) counted 3,145 “429” replies in 16,105 requests over one day and points at the prompt-plus-max_tokens reservation above. Darkbloom has not confirmed that this is the cause, and an open Darkbloom issue (#846) is looking at where the coordinator’s estimates and the Mac’s own admission disagree. ### What to check 1. Run darkbloom status. If the model is listed as Not loaded, Preload skipped or Cold load blocked (memory), it isn’t ready to take a request. 2. Run darkbloom doctor and fix any warning under model fits in RAM, recent model load or competing inference. Another AI app holding memory shrinks the budget your Mac reports (see running Ollama next to Darkbloom). 3. Give it 10 minutes. In Darkbloom’s code the budget distrust ends after 5 minutes and the longest capacity pause is 10. 4. If paid work still doesn’t arrive, run darkbloom stop and darkbloom start, as for any routing stall, and let the start finish. 5. If one model keeps doing this, serve a different model for a while and check the Darkbloom Slack for others seeing the same. ### Does it cost base rewards? No. Base rewards need only a loaded model and a steady connection, so they keep arriving. What you lose is paid requests for that model while the coordinator thinks your Mac is full. ### Sources - API contract (machine_busy, 429, Retry-After): github.com/Layr-Labs/d-inference/blob/master/docs/reference/api-contracts.md - Routing gates and capacity signals: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/routing.md - The two machine_busy messages: github.com/Layr-Labs/d-inference/blob/master/coordinator/api/dispatch.go - Token-budget check (prompt plus max_tokens): github.com/Layr-Labs/d-inference/blob/master/coordinator/registry/scheduler.go - Provider analysis of 429s on Qwen 3.8: github.com/Layr-Labs/d-inference/issues/1250 - Coordinator estimates vs provider admission (open): github.com/Layr-Labs/d-inference/issues/846 ### How BloomGauge helps BloomGauge shows live whether paid work is reaching your Mac and what it earns each hour, and its network view shows demand and warm Macs per model, so you can tell a quiet model from a Mac that has stopped getting work. ### Questions **What does machine_busy mean in Darkbloom?** It is a 429 reply from Darkbloom’s coordinator to a self-routed request: the coordinator’s record says your own Mac has no free slot for that model. It comes with a Retry-After header. It doesn’t mean the Mac itself refused the request. **Why does Darkbloom say my machine is at capacity when it is idle?** The coordinator decides from its own view of your Mac: its concurrency limit, a token budget that counts each request’s prompt plus max_tokens, and a short pause after capacity refusals. Any of these can mark an idle Mac as full. Check darkbloom status and darkbloom doctor, wait up to 10 minutes, then stop and start the provider. **Does machine_busy stop Darkbloom base rewards?** No. Base rewards need only a loaded model and a steady connection. You lose paid requests for that model while the coordinator thinks your Mac is full. --- ## Running Ollama or another local AI server next to Darkbloom URL: https://bloomgauge.io/help/darkbloom-ollama-port-conflict · Updated 2026-09-29 Short answer: the Darkbloom provider doesn’t listen on Ollama’s port, so the two don’t fight over 11434. They compete for the same unified memory and GPU, and darkbloom doctor warns about that as “competing inference”. Quit Ollama, or unload its models, while your Mac serves Darkbloom. A real port clash only happens with Darkbloom’s optional local endpoint, which uses port 8000 by default. Everything below comes from Darkbloom’s docs and code and from Ollama’s own FAQ (links at the end). ### What conflicts, and what doesn’t - Network: the provider only connects out, to api.darkbloom.dev on port 443. It needs no inbound port, so a program listening on 11434 can’t block its traffic. - Memory and GPU: Ollama, llama-server, mlx_lm.server, vLLM and text-generation-launcher all load models into the same unified memory and use the same GPU as Darkbloom. darkbloom doctor looks for these, and for anything listening on 11434, and warns that they “can reduce usable RAM / deroute paid work”. - Less free memory means a smaller token budget for your Mac, a model that won’t load, or slower answers. Each of those means fewer paid requests. - Ports only matter for Darkbloom’s own local endpoint (darkbloom start --local or --local-endpoint), which listens on 127.0.0.1:8000 unless you choose another port. ### Check with darkbloom doctor 1. Run darkbloom doctor and find the competing inference line. ✓ means nothing was found. 2. A ⚠ names what it found, for example port 11434 LISTEN (Ollama default) or processes: ollama. 3. Quit the other app, then run darkbloom doctor again. ### See what is listening yourself - lsof -nP -iTCP -sTCP:LISTEN lists every program listening on a TCP port, with its name and port. - lsof -nP -iTCP:11434 -sTCP:LISTEN checks Ollama’s default port. It is the same check darkbloom doctor runs. - lsof -nP -iTCP:8000 -sTCP:LISTEN checks the port Darkbloom’s local endpoint uses by default. - ollama ps shows which models Ollama has in memory right now. ### Free the memory 1. Quit Ollama from its menu bar icon. That stops its server and frees its models. 2. Or keep Ollama and unload its models with ollama stop . By default Ollama keeps a model in memory for 5 minutes after the last request. 3. Run darkbloom status and check that your Darkbloom model is loaded and not listed as Cold load blocked (memory). ### “Local server failed to bind” (port 8000) - darkbloom start --local stops with “Local server failed to bind : within 5s” when another program holds the port. Choose another port with --port, or stop that program. - With --local-endpoint, a busy port doesn’t stop the provider. It logs “Local OpenAI endpoint did NOT bind … (port already in use?)” and keeps serving the network. Restart with a free port if you want the local endpoint. - Example: darkbloom start --local-endpoint --port 8080 ### Sources - Doctor checks and start errors: github.com/Layr-Labs/d-inference/blob/master/docs/provider/troubleshooting.md - Local endpoint and ports: github.com/Layr-Labs/d-inference/blob/master/docs/provider/direct-mode.md - Network needs (outbound only): github.com/Layr-Labs/d-inference/blob/master/docs/provider/hardware-requirements.md - Competing inference check: github.com/Layr-Labs/d-inference/blob/master/provider-swift/Sources/darkbloom/Diagnostics/CompetingInferenceDiagnostics.swift - Ollama FAQ (port 11434, ollama ps, ollama stop, 5-minute default): github.com/ollama/ollama/blob/main/docs/faq.mdx ### How BloomGauge helps BloomGauge serves its own dashboard only on 127.0.0.1:8765 (and 8766 for the phone view), so it doesn’t take Darkbloom’s port 8000 or Ollama’s 11434. It shows CPU, GPU, memory and temperature readings next to your earnings. ### Questions **Can I run Ollama and Darkbloom on the same Mac?** Yes, but not at the same time if you want steady Darkbloom earnings. They don’t share a port, but both load models into the same unified memory and use the same GPU. Quit Ollama or unload its models with ollama stop while the Mac serves Darkbloom. **Does Ollama on port 11434 block Darkbloom?** No. The Darkbloom provider only connects out to api.darkbloom.dev on port 443 and listens on no port by default. darkbloom doctor checks 11434 only to spot Ollama, because Ollama competes for memory and GPU time. **What does “competing inference” mean in darkbloom doctor?** Another AI server, such as Ollama, llama-server, mlx_lm.server or vLLM, is running on the Mac or listening on Ollama’s port 11434. It can reduce the memory Darkbloom can use and cost you paid work. Quit it and run darkbloom doctor again. --- ## darkbloom unenroll errors: moving from MDM to App Attest, step by step URL: https://bloomgauge.io/help/darkbloom-unenroll-error · Updated 2026-09-29 Short answer: darkbloom unenroll only shows you which profile to remove after Darkbloom’s coordinator has confirmed, within the last 10 seconds, that App Attest verifies your running provider and that removal is turned on for your Mac. Most errors mean one of those isn’t true yet, or the command couldn’t read your profiles because it wasn’t run in an interactive Terminal. Keep the profile installed until the command names it. Everything below comes from Darkbloom’s docs and the command’s source code (links at the end). ### Before you start - macOS 27 or later. On older macOS the App Attest option refuses and tells you to keep the profile. - The provider running and up to date: darkbloom update, then darkbloom restart. - A user logged in at the Mac’s screen (or over Screen Sharing), with the provider running in that session. - darkbloom status or darkbloom doctor saying App Attest authorizes this connection and that Darkbloom MDM removal is available. - An administrator password, in case the command needs sudo to read the installed profiles. ### Step by step 1. Open Terminal on the Mac itself, or over Screen Sharing. Not over SSH, and not as a background job. 2. Run darkbloom doctor. It should say App Attest authorizes this connection and that removal is available. 3. Run darkbloom unenroll and choose 2, “Remove only Darkbloom MDM — keep serving with App Attest”. Option 1 is full exit: it stops the provider and offers to delete your keys. Press Enter to cancel. 4. If asked, enter your administrator password. It is used only to read the list of installed profiles. 5. The command names the exact profile, with its identifier and server, and opens System Settings → General → Device Management. Remove only that profile. Keep any company management profile. 6. Keep the provider running while you remove it, then run darkbloom doctor again. 7. darkbloom unenroll --keep-serving does the same without the menu. ### Error messages and what to do | Message | What it means | What to do | |---|---|---| | “App Attest authorization is unconfirmed; keep any existing management profiles installed…” | The command found no fresh verdict from the coordinator for this running provider: it isn’t running, isn’t connected, or its state is more than 10 seconds old. | Start or restart the provider from the logged-in desktop, wait until darkbloom status shows it online, then run the command again. | | “App Attest authorizes this connection. Darkbloom MDM removal is not enabled for this machine yet.” | App Attest works, but Darkbloom hasn’t turned on removal for your Mac. | Keep the profile. There is nothing to fix on your side; try again later. | | “Serving through legacy verification; keep the Darkbloom MDM profile.” | Your Mac is still verified through MDM, not App Attest. | Keep the profile. Update and restart the provider, then check the APP ATTEST section of darkbloom doctor. | | “The coordinator supports App Attest, but this connection is not currently qualified…” | App Attest isn’t verifying this connection right now. The reason follows the message. | Fix what darkbloom doctor flags (logged-in session, Full Security, a current provider). The coordinator retries after 1 minute, then 5, then every 10. | | “This coordinator has not enabled App Attest serving…” | Darkbloom hasn’t enabled App Attest for this connection. | Keep the profile, check darkbloom doctor and contact Darkbloom support. | | “Removing MDM while keeping this provider online requires macOS 27 or later…” | The Mac runs an older macOS. | Keep the profile until you upgrade to macOS 27 and App Attest verifies the Mac. | | “Run darkbloom unenroll in an interactive terminal to choose…” | The command ran without a terminal, for example from a script or an SSH session without one. | Run it in Terminal, or use --keep-serving. | | “Could not verify the exact Darkbloom enrollment profile and server…” | The command couldn’t read the installed profiles as administrator (password refused, no terminal, or a background job), or couldn’t match the Darkbloom profile. | Run it again in the foreground of a Terminal window and enter your administrator password. If it still fails, keep your profiles and contact Darkbloom support. | | “App Attest readiness changed during the profile check…” | The verdict expired or changed while the command read the profiles. | Keep the profile. Wait until darkbloom status shows App Attest again, then retry. | | “The installed management profile could not be identified…” | The profile check itself failed. | Run darkbloom doctor, then try again. | | “App Attest authorizes this connection. No Darkbloom MDM enrollment needs removal.” | Not an error: there is no Darkbloom profile to remove. | Nothing to do. | | “A provider process is still running or shutting down…” | Full exit only: a darkbloom process started by hand is still running. | Stop it, then run the command again. No local data was removed. | | “--force cannot be combined with --keep-serving…” | --force means full exit, which deletes local data. | Leave out --force. | ### What not to do - Don’t remove the profile in System Settings before the command names it. That is a common way providers lost verification in September 2026. - Don’t delete Keychain items, credentials or ~/.darkbloom to force App Attest. Darkbloom’s docs say not to delete account, machine, Keychain or management state to force retries. - Don’t choose full exit (option 1) unless you want to stop providing. - Don’t remove a company management profile. App Attest works alongside it. ### After removal The command keeps your Darkbloom account, machine identity, App Attest keys and models. If App Attest authorization later expires or is revoked, new requests wait until the Mac is verified again. Run darkbloom status and check the Trust line. ### Sources - Provider attestation guide (removal rules): github.com/Layr-Labs/d-inference/blob/master/docs/provider/attestation.md - CLI reference (darkbloom unenroll): github.com/Layr-Labs/d-inference/blob/master/docs/provider/cli-reference.md - App Attest authorization: github.com/Layr-Labs/d-inference/blob/master/docs/reference/provider-authorization.md - Menu choice and macOS check: github.com/Layr-Labs/d-inference/blob/master/provider-swift/Sources/darkbloom/UnenrollCommand+Choice.swift - App Attest removal path: github.com/Layr-Labs/d-inference/blob/master/provider-swift/Sources/darkbloom/UnenrollCommand+KeepServing.swift - Readiness messages: github.com/Layr-Labs/d-inference/blob/master/provider-swift/Sources/ProviderCore/Diagnostics/ProviderAuthorizationReadiness.swift ### How BloomGauge helps BloomGauge shows live whether paid work is reaching your Mac and what it earns each hour, so if verification lapses after you remove the profile, it shows up as paid work stopping, not as a gap in next week’s payout. ### Questions **How do I remove Darkbloom MDM and keep serving on macOS 27?** Wait until darkbloom doctor says App Attest authorizes the connection and MDM removal is available. Then run darkbloom unenroll in Terminal on the Mac, choose option 2 (keep serving with App Attest), enter your administrator password if asked, and remove only the profile it names in System Settings → General → Device Management. **Why does darkbloom unenroll say App Attest authorization is unconfirmed?** The command needs a verdict from Darkbloom’s coordinator for the running provider that is less than 10 seconds old. Start or restart the provider from the logged-in desktop, wait until darkbloom status shows it online, and run the command again. **What does “Could not verify the exact Darkbloom enrollment profile and server” mean?** darkbloom unenroll couldn’t read the installed profiles as administrator, usually because it wasn’t run in the foreground of an interactive Terminal or the password prompt was refused. Run it again in Terminal on the Mac and enter your password. Keep all profiles installed until it names the right one. **Does darkbloom unenroll remove the profile for me?** No. It checks that removal is safe, names the exact Darkbloom profile and opens System Settings. You remove it there. --- ## Running Darkbloom on a headless Mac: no monitor, SSH and automatic login URL: https://bloomgauge.io/help/darkbloom-headless-mac-setup · Updated 2026-09-29 Short answer: a headless Mac can serve Darkbloom, but it needs a user logged in to the Mac’s own desktop session, not just an SSH session. Turn on automatic login, turn off log out when idle, keep it from sleeping, and start the provider from the desktop (Screen Sharing works). Over plain SSH, App Attest can’t verify the Mac and starting the provider can fail. Everything below comes from Darkbloom’s docs and code (links at the end). ### Why SSH alone isn’t enough - The provider runs as a LaunchAgent inside your login session (launchd’s gui/ domain). Darkbloom’s troubleshooting guide says these run only inside a logged-in session. - App Attest, and the Apple push notifications Darkbloom uses to check the provider’s code, work only inside a logged-in desktop session. With nobody logged in, darkbloom doctor says the provider can’t obtain an APNs token or attest. - On macOS 27, a provider started from SSH runs outside the desktop session even when someone is logged in. darkbloom doctor flags this as gui session, and Apple can report App Attest as unsupported (is_supported_false). ### Set up the Mac once 1. Connect a screen, or use Screen Sharing, and log in as the user that runs Darkbloom. 2. System Settings → Users & Groups → Automatically log in as → choose that user. After a reboot or power cut the Mac then logs back in on its own. macOS doesn’t offer automatic login while FileVault is on. 3. System Settings → Privacy & Security → Advanced → turn off Log out automatically after inactivity. Screen lock is fine; only logging out stops the provider. 4. Optional: sudo pmset -a sleep 0, so the Mac never idle-sleeps. The provider keeps the Mac awake while it serves, but deep idle sleep can delay reconnecting and verification. 5. In Terminal in that desktop session, run darkbloom start (or darkbloom restart). 6. Run darkbloom doctor and check console session, automatic login, auto-logout on idle and sleep prevention. On macOS 27, also check gui session and launch session. ### A MacBook with the lid closed On power, with Darkbloom serving, a MacBook usually keeps working with the lid closed: the provider itself stops the Mac from sleeping while it serves. Try that first. If it still sleeps when closed (for example on battery, or when the provider isn’t serving), turn sleep off in Terminal with sudo pmset -a disablesleep 1 (sudo pmset -a disablesleep 0 turns normal sleep back on), and keep it plugged in, because with sleep off it will run the battery flat under load. It runs warmer closed, so give it some airflow. And stay logged in: Darkbloom’s verification needs a logged-in session, so turn on automatic login in case it restarts. ### Managing it remotely - Screen Sharing gives you the real desktop session. Run darkbloom start, darkbloom restart and darkbloom unenroll there. - Over SSH, use the read-only commands: darkbloom status, darkbloom doctor and darkbloom logs --last 1h. - If darkbloom doctor reports gui session after you started the provider over SSH, run darkbloom restart from the desktop. ### “launchctl bootstrap failed” darkbloom start and darkbloom restart load the provider into your desktop login session with launchctl bootstrap gui/. The text after “launchctl bootstrap failed:” comes from macOS’s launchctl, and Darkbloom’s docs don’t give a cause for error 5. Providers have seen it on headless Macs and after restarts in September 2026. What the docs do say is that the provider belongs in a logged-in session and should be started from the desktop. So: 1. Log in at the screen or over Screen Sharing and run darkbloom start in Terminal there. 2. Check the service: launchctl print gui/$(id -u)/io.darkbloom.provider | head shows whether it is loaded and its last exit status. 3. Read the logs: tail -50 ~/.darkbloom/provider.log ~/.darkbloom/watchdog.log. 4. If darkbloom restart says the provider is not running, use darkbloom start. 5. If it still fails from the desktop, run darkbloom report (add --dry-run to see what it sends first) and ask in the Darkbloom Slack with the report id. ### Power cuts With automatic login on, the Mac logs back in after a power cut and the provider starts with the session. It then has to be verified again before it gets paid work, which can take a while (see verification pending). Some providers use a small UPS so short power cuts don’t restart the Mac at all. ### Sources - Provider attestation guide (console session, automatic login): github.com/Layr-Labs/d-inference/blob/master/docs/provider/attestation.md - Troubleshooting (doctor checks, service lifecycle): github.com/Layr-Labs/d-inference/blob/master/docs/provider/troubleshooting.md - CLI reference (LaunchAgent label and paths): github.com/Layr-Labs/d-inference/blob/master/docs/provider/cli-reference.md - Doctor’s session, login and sleep checks: github.com/Layr-Labs/d-inference/blob/master/provider-swift/Sources/ProviderCore/Diagnostics/AttestationReadiness.swift - How the provider is loaded with launchctl: github.com/Layr-Labs/d-inference/blob/master/provider-swift/Sources/ProviderCore/Service/LaunchAgent.swift ### How BloomGauge helps BloomGauge’s optional phone access, private through your own Tailscale tailnet, shows a headless Mac’s earnings and status from your phone, and My Macs puts up to ten Macs in one read-only view. ### Questions **Can I run Darkbloom on a Mac without a monitor?** Yes. Log in once at the screen or over Screen Sharing, turn on automatic login, turn off auto-logout, keep the Mac from sleeping and start the provider from that desktop session. After that it can run with no monitor attached. **Why doesn’t Darkbloom work over SSH?** The provider runs inside your desktop login session, and App Attest and Apple push notifications only work there. A provider started over SSH, or a Mac with nobody logged in, can’t be verified, so it gets no paid work. Use Screen Sharing to start or restart it. **What does “launchctl bootstrap failed: 5” mean when I run darkbloom restart?** darkbloom could not load its provider service into your desktop login session. Darkbloom’s docs don’t list a cause for error 5, but they say to start the provider from the logged-in desktop. Log in at the screen or over Screen Sharing, run darkbloom start there and check launchctl print gui/$(id -u)/io.darkbloom.provider. --- ## Running Darkbloom on several Macs URL: https://bloomgauge.io/help/darkbloom-several-macs · Updated 2026-10-01 Short answer: install BloomGauge on the other Mac and let it set up Darkbloom there, signed in to the same Darkbloom account. In BloomGauge, Add another Mac gives you a link to open on that Mac. Each Mac runs its own provider, is verified on its own and earns on its own; the earnings land in the same account. To see every Mac in one view, connect them in My Macs (this part needs Tailscale). ### How Darkbloom treats several Macs - Every Mac runs its own Darkbloom provider and signs in to your Darkbloom account. You don’t need a second account. - Each Mac is verified separately, so each one goes through Darkbloom’s approval once (see verification pending). - Each Mac picks and loads its own model. A model that fits a 128 GB Mac may not fit a 48 GB one. - Requirements apply per Mac: Apple Silicon with 48 GB+ memory, and macOS 27 recommended. ### Set up the next Mac from BloomGauge 1. On a Mac that already runs BloomGauge, open My Macs (or the More menu) and choose Add another Mac. 2. Send the link to the other Mac with Share… (AirDrop, Messages or Mail), Copy link, or scan the QR code with your iPhone. 3. On the other Mac, download BloomGauge from that link and open it. 4. Press Agree and set up and sign in to the same Darkbloom account in your browser. BloomGauge downloads and sets up Darkbloom, no Terminal; the model keeps downloading in the background. ### See every Mac in one place (My Macs) My Macs shows up to ten Macs in one view, from your Mac or your phone. The Macs talk to each other privately through your own Tailscale network; nothing goes through a BloomGauge server. 1. Install Tailscale on every Mac and sign in with the same Tailscale account. 2. On the other Mac, open More → Phone access → Enable phone access, then copy its address. 3. On the Mac you look at most, open My Macs, give the other Mac a name, paste its address and press Connect Mac. ### Without BloomGauge Darkbloom’s own steps work the same on every Mac: update to macOS 27, run Darkbloom’s installer, then darkbloom login (same account) and darkbloom start. See how to set up Darkbloom on a Mac. ### How BloomGauge helps BloomGauge’s Add another Mac sends the other Mac a download link; there BloomGauge downloads and sets up Darkbloom, picks a model that fits that Mac and keeps it earning. My Macs then shows all of them in one view. ### Questions **Can I run Darkbloom on more than one Mac?** Yes. Each Mac runs its own provider and signs in to the same Darkbloom account. Each one is verified and earns on its own, and the earnings go to that one account. **Do I need a separate Darkbloom account for each Mac?** No. Sign every Mac in to the same Darkbloom account. **How do I see all my Darkbloom Macs in one place?** In BloomGauge, connect them in My Macs. It needs Tailscale on every Mac, signed in to the same Tailscale account, and Phone access turned on for each Mac you add. --- ## Darkbloom Autopilot: what it does today, and how to join or leave from BloomGauge URL: https://bloomgauge.io/help/darkbloom-autopilot · Updated 2026-10-02 Short answer: Darkbloom Autopilot is an experimental, opt-in feature that will one day choose which of your downloaded models stay loaded. In the current rollout it only watches: your Mac keeps loading and serving models as before, but model switching is turned off while you’re enrolled. In BloomGauge you join or leave Autopilot from its Autopilot card, with no Terminal. Darkbloom facts below come from its open-source docs (links at the end). ### What Autopilot is Autopilot looks at demand across the network and, once Darkbloom switches it to live, will decide which of the models already downloaded on your Mac stay in memory, aiming to keep the Mac busy. Darkbloom says it does not promise higher utilization or earnings. It never downloads models; it covers the verified network models you already have. ### Today it only watches (shadow mode) - Joining records your consent for the “shadow” rollout. Until Darkbloom sends its first instructions the phase reads waiting, then shadow. - In shadow mode Autopilot doesn’t change which models are loaded. Your models and idle settings keep working as before. - Only Darkbloom can move the rollout to live; there is no switch for it on your Mac. When it does, the phase reads active. ### Join or leave from BloomGauge - BloomGauge’s Autopilot card shows whether this Mac is enrolled, whether Autopilot is watching or choosing, which models it covers and what it is doing. It’s in the Optimizer tab (on the Mac and the phone), and also in Earnings → Overview (the pulse) while the Mac is enrolled. - The card also shows Autopilot earnings (a floor estimate and “Is Autopilot earning you more?”) and model advice. The advice is information only; it changes nothing. - Join Darkbloom Autopilot enrolls the Mac. The button is only on the Optimizer tab card on the Mac (not on the phone, in the pulse or during setup), and appears once the Mac runs Darkbloom 0.9.16 or later, which installs automatically. - Turn off Autopilot leaves it and brings back your saved idle setting. Your downloaded models stay on disk. - When BloomGauge starts Darkbloom for you, Darkbloom doesn’t ask about Autopilot, so the Join button is the way in. ### Model switching is off while you’re enrolled While a Mac is enrolled, Darkbloom doesn’t accept manual model switches, even in shadow mode. To pick models yourself (or let BloomGauge’s Manager do it), turn Autopilot off on its card. ### BloomGauge while Autopilot is watching (shadow, waiting or paused) From BloomGauge beta 48: - The Manager pauses and says why, and BloomGauge never changes the model. Model controls show “Autopilot is in its test phase (watching only). Turn off Autopilot to switch models yourself.” Turning the Manager on isn’t possible while enrolled. - Keep this Mac earning stays on: it reloads the same model, restarts a stuck Darkbloom and recovers stalls, as usual. If work stops while similar Macs are busy, BloomGauge first sends Darkbloom a test request, then tries one restart on the same model. - Keep my model loaded stays on. - Why not earning? names the Autopilot phase, and you can restart Darkbloom from there. Autopilot stays on. ### BloomGauge once Autopilot is live (active) - Darkbloom chooses the models, and the Manager steps back to watching. - If Darkbloom pauses Autopilot, BloomGauge leaves the Mac alone. - Model controls show what Autopilot loaded and why. - Keep this Mac earning only restarts a stopped Darkbloom, and sends a test request when the Mac gets no work while similar Macs do (at most once every 30 minutes). It never changes models. - Why not earning? explains Autopilot’s latest change. ### Should you join? It’s your choice, and it’s experimental. In shadow mode it changes nothing yet, and you give up model switching: your own, and BloomGauge’s Manager (BloomGauge’s repairs keep working). If you want BloomGauge to pick your model, stay out for now. If you join, you can leave at any time from the Autopilot card. BloomGauge never joins or leaves for you. ### Sources - How Autopilot works: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/model-autopilot.md - Autopilot reference (phases and leaving): github.com/Layr-Labs/d-inference/blob/master/docs/provider/cli-reference.md ### How BloomGauge helps From beta 48, BloomGauge’s Autopilot card lets you join or leave Darkbloom Autopilot without Terminal and shows whether it is watching or choosing, and which models it covers. While Autopilot only watches, BloomGauge keeps repairing the Mac on the same model; once Autopilot is live, BloomGauge steps back and shows what Autopilot chose. It never joins or leaves for you. ### Questions **What is Darkbloom Autopilot?** An experimental, opt-in Darkbloom feature that will choose which of your downloaded models stay loaded once Darkbloom switches it to live. In the current rollout it only watches (shadow mode) and changes nothing on your Mac. **How do I turn off Darkbloom Autopilot?** In BloomGauge, press Turn off Autopilot on the Autopilot card. Your saved idle setting comes back and your downloaded models stay on disk. **Why can’t I switch Darkbloom models?** Your Mac is enrolled in Autopilot. While enrolled, Darkbloom doesn’t accept manual switches, even in shadow mode. Turn Autopilot off to switch models yourself. **Does Darkbloom Autopilot download models?** No. It only covers verified network models already downloaded on your Mac. --- ## How to set up Darkbloom on a Mac, step by step URL: https://bloomgauge.io/help/how-to-set-up-darkbloom-mac · Updated 2026-10-01 Short answer: let BloomGauge set it up. BloomGauge downloads and sets up Darkbloom for you. All you do is create a Darkbloom account (or sign in to yours). About 5 minutes of your time, no Terminal; the model finishes downloading in the background. BloomGauge checks your Mac, you agree once, it downloads Darkbloom and checks its Apple signature, you sign in to Darkbloom in your browser while the model downloads, and it starts serving. We make BloomGauge, so weigh this accordingly. Prefer to do it yourself? Update to macOS 27, run Darkbloom’s installer in Terminal (curl -fsSL https://api.darkbloom.dev/install.sh | bash), link your account with darkbloom login, then run darkbloom start. The Terminal steps below come from Darkbloom’s provider docs and its setup page in the console (links at the end). ### What you need - BloomGauge runs on macOS 14+. To earn with Darkbloom you need an Apple Silicon Mac with 48 GB+ memory. Darkbloom accepts macOS 26, but update to macOS 27 first: it skips the MDM profile step, which Darkbloom is retiring. - BloomGauge checks your chip, memory, macOS version and free disk space for you before it installs anything. To check yourself: Apple menu → About This Mac. Darkbloom’s installer refuses Intel Macs. - A Darkbloom account, to link the Mac to. Its earnings go to that account. - Power and a steady internet connection. The provider only connects out (HTTPS to api.darkbloom.dev), so no router ports need opening. - Free disk space for models. The model picker shows download sizes before you choose. ### Set up Darkbloom with BloomGauge 1. Download BloomGauge from bloomgauge.io, drag it into Applications and open it. macOS asks once whether to open an app downloaded from the internet; BloomGauge is signed and notarized by Apple. 2. BloomGauge checks the Mac: Apple Silicon, 48 GB or more memory, macOS 27 and enough free disk space for the model. Below macOS 27 it offers Open Software Update first, then reopens after the restart and continues. Under 48 GB it says Darkbloom won’t accept the Mac, and BloomGauge works as a viewer only. 3. One screen, Get this Mac earning, lists what BloomGauge will do and the model it picked for your Mac (Change is optional). Open at Login, Manager on, Keep my model loaded and notifications start ticked; untick any you don’t want. Press Agree and set up. Starting to serve means you accept Darkbloom’s Terms of Service, linked on that screen. 4. BloomGauge downloads Darkbloom from Darkbloom’s own server (api.darkbloom.dev) and installs it only after the checksums match, the app is signed by Eigen Labs (Apple developer team SLDQ2GJ6TL) and Apple’s notarization check accepts it. It goes in your home folder (~/.darkbloom). No administrator password is needed. 5. Your browser opens on Darkbloom’s sign-in page, and BloomGauge shows the one-time code. Sign in to Darkbloom and approve this Mac. BloomGauge never sees your password. The model downloads at the same time. 6. When both are done, BloomGauge starts Darkbloom. A Getting ready card ticks off each step and then waits for Darkbloom to approve the Mac, usually within minutes, sometimes a few hours. You can close the window; setup carries on and picks up where it left off after a quit or restart. ### What you still do yourself - Sign in to Darkbloom in your browser and approve the Mac. If you don’t have a Darkbloom account yet, you create it there. - Update to macOS 27 first if the Mac runs an older version: Software Update and a restart. - Allow BloomGauge’s notifications when macOS asks, if you want them. - Wait for the model download (Gemma 4 26B, for example, is 15.6 GB) and for Darkbloom’s approval. Neither needs you at the Mac. - Set up payouts on Darkbloom’s console later. BloomGauge doesn’t handle payouts. - If any check on Darkbloom’s download fails, BloomGauge doesn’t install it. It shows Darkbloom’s own install command to paste into Terminal instead, and a Send report button. - Already running Darkbloom? BloomGauge skips the steps that are done and never reinstalls, signs out or restarts a running provider during setup. To undo, More → Darkbloom → Remove Darkbloom from this Mac… moves it to the Trash. ### Set up Darkbloom yourself (Terminal) The same setup by hand, in four parts: update macOS, install, link your account, then pick a model and start. It follows Darkbloom’s provider docs. ### 1. Update to macOS 27 first On macOS 27 or later, Darkbloom verifies the Mac with Apple’s App Attest, and the installer skips the MDM profile download and System Settings approval. On older macOS the installer opens System Settings to enroll the Mac in Darkbloom’s MDM, which Darkbloom says will be switched off soon. So update first in System Settings → General → Software Update, then install. Already have Darkbloom’s profile from an earlier setup? Keep it until darkbloom unenroll confirms App Attest migration is ready, and keep any employer management profile. ### 2. Install the provider 1. Open Terminal on the Mac you want to connect. 2. Run Darkbloom’s install command: curl -fsSL https://api.darkbloom.dev/install.sh | bash 3. Then run source ~/.zshrc so Terminal finds the darkbloom command. 4. The installer needs no sudo. It checks the Mac is Apple Silicon, downloads the provider and verifies its checksums, installs it under ~/.darkbloom, adds it to your PATH, and runs darkbloom doctor at the end. It doesn’t download a model yet. ### 3. Link your account 1. Run darkbloom login. 2. It opens your browser and shows a one-time code. Approve it with the Darkbloom account where you want this Mac’s earnings to go. 3. Wait for “Account linked successfully!” in Terminal before you continue. If you skip this step, darkbloom start offers to link the account for you. ### 4. Pick a model and start 1. Run darkbloom start. Starting the provider means you accept Darkbloom’s Terms of Service, which it shows first. 2. It checks the Mac (System Integrity Protection, GPU and memory), then shows a model picker. Choose what to serve; the article on which Darkbloom model to run helps you choose. 3. It asks what to do with memory when idle: Always ready keeps models loaded, Free when idle (the default) unloads them after 60 minutes without requests and reloads them on demand. 4. It downloads the models and starts the provider in the background. The service starts again every time you log in. The first download can take a while, so keep the Mac on power and online. ### 5. Check it’s verified and online 1. Run darkbloom status. It shows the configuration, hardware, the running provider and a Trust line. hardware / online means Darkbloom can send your Mac public paid work. 2. Run darkbloom doctor. Lines marked ✗ are failures; it covers hardware, Metal, SIP, the account link, verification and whether it can reach Darkbloom. 3. Open the Darkbloom console dashboard to see this Mac’s connection, verification and earnings. A linked Mac may still be downloading models or waiting for verification, and being connected alone doesn’t prove it is serving or earning. 4. On older macOS, finish the legacy setup instead: run darkbloom enroll and approve the Darkbloom profile in System Settings. ### 6. Keep it earning - Keep a model loaded: darkbloom idle keep-loaded, then darkbloom restart. With the default Free when idle setting, the model unloads after 60 minutes without requests, which pauses base rewards. - Keep the Mac awake, on power and logged in. Verification needs a user logged in at the Mac’s screen, so turn on automatic login and turn off log out when idle. - Running it without a monitor? Start it from the desktop session (Screen Sharing works), not over SSH. See the headless Mac article. - The Darkbloom Mac setup checklist covers the rest: sleep, airflow, network, and what to check after updates. ### Common setup errors - Online but Trust shows self_signed or App Attest pending: see Darkbloom verification pending. - darkbloom unenroll refuses or errors while you move from MDM to App Attest: see the darkbloom unenroll error article. - launchctl bootstrap failed, or it won’t verify over SSH: see running Darkbloom on a headless Mac. - A model won’t load, or says there isn’t enough memory: see Darkbloom model won’t load. ### Sources - Darkbloom provider setup page: console.darkbloom.dev/providers/setup - Provider quickstart (install, login, start, verify): github.com/Layr-Labs/d-inference/blob/master/docs/provider/quickstart.md - Installation (what the installer checks and writes): github.com/Layr-Labs/d-inference/blob/master/docs/provider/installation.md - Hardware requirements: github.com/Layr-Labs/d-inference/blob/master/docs/provider/hardware-requirements.md - Attestation and trust levels: github.com/Layr-Labs/d-inference/blob/master/docs/provider/attestation.md - CLI reference (darkbloom start, status, doctor, idle): github.com/Layr-Labs/d-inference/blob/master/docs/provider/cli-reference.md ### How BloomGauge helps BloomGauge sets up Darkbloom for you, no Terminal needed: it checks the Mac, downloads and verifies Darkbloom, opens Darkbloom’s sign-in in your browser and starts serving. After that it runs Darkbloom day to day: it shows live and confirmed earnings per model and hour, picks the best-paying model for your Mac (you can turn the Manager off any time), recovers when the provider stalls or a load fails, and you can check and control it from your phone over your own Tailscale connection. ### Questions **How do I set up Darkbloom on a Mac?** With BloomGauge: install it, press Agree and set up, and sign in to Darkbloom in your browser. It checks the Mac, installs and verifies Darkbloom, downloads a model and starts serving. Or do it yourself: update to macOS 27, then in Terminal run curl -fsSL https://api.darkbloom.dev/install.sh | bash, link your account with darkbloom login, and run darkbloom start to pick a model and start serving. Check it with darkbloom status and darkbloom doctor. **Do I need the Terminal to set up Darkbloom?** Not with BloomGauge. It installs Darkbloom, links your account through Darkbloom’s own browser sign-in and starts serving, with no administrator password; in the rare case it can’t complete the install itself, it shows Darkbloom’s one install command to paste into Terminal. You still sign in to Darkbloom in your browser, and a Mac below macOS 27 updates macOS first. If BloomGauge can’t verify Darkbloom’s download, it doesn’t install it and shows Darkbloom’s Terminal command instead. Without BloomGauge, Darkbloom’s setup is three Terminal commands: the installer, darkbloom login and darkbloom start. **How long does Darkbloom setup take?** About 5 minutes of your time with BloomGauge: install it, press Agree and set up, and create a Darkbloom account (or sign in) in your browser. BloomGauge downloads and sets up Darkbloom, no Terminal. The model is a large download (about 16 GB for the default), so it keeps downloading in the background; how long depends on your connection, and the Mac starts earning once it has loaded and Darkbloom has approved it. **What Mac do I need for Darkbloom?** BloomGauge runs on macOS 14+. To earn with Darkbloom you need an Apple Silicon Mac with 48 GB+ memory. Darkbloom accepts macOS 26, but update to macOS 27 first: it skips the MDM profile step, which Darkbloom is retiring. --- ## Darkbloom provider on a Mac: setup checklist URL: https://bloomgauge.io/help/darkbloom-mac-setup-checklist · Updated 2026-09-29 Installing the provider is covered in how to set up Darkbloom on a Mac and in Darkbloom’s own guide. This checklist covers what keeps a Mac earning afterwards, which is where most lost hours come from. ### Before you start - BloomGauge runs on macOS 14+. To earn with Darkbloom you need an Apple Silicon Mac with 48 GB+ memory. Darkbloom accepts macOS 26, but update to macOS 27 first: it skips the MDM profile step, which Darkbloom is retiring. - Install the provider, sign in (darkbloom login) and start a model. The step-by-step setup article walks through each command. ### Keep it online - Keep the Mac awake: in System Settings, stop it from sleeping automatically while on power, or run caffeinate in Terminal while it serves. - Keep a user logged in at the screen: turn on automatic login and turn off log out when idle. Darkbloom’s verification needs a logged-in session, so a reboot to the login window stops paid work. - Keep it on AC power. Loading models is heavy work. - Give it good airflow. A hot Mac throttles and answers requests more slowly. - Use a wired connection or strong Wi-Fi. Dropped connections interrupt requests. ### Check it’s serving 1. Run darkbloom status: running, signed in, model loaded, and a Trust line of hardware / online. Anything else means the Mac is not verified yet (see the verification article). 2. Find your Mac in the provider list on the Darkbloom console. 3. Watch your credits over the first hours. Nothing for a long stretch while online usually means a routing stall. ### After updates and restarts Since Darkbloom 0.9.9, restarts drain first and can take up to 10 minutes when requests are in flight. Let them finish, then check darkbloom status again. The provider updates itself (it checks every 30 minutes by default), so check the Trust line again after an update or a macOS upgrade. ### How BloomGauge helps BloomGauge watches all of this from the menu bar: live earnings, whether work is arriving, temperature and power, and it can pick and switch models for you. ### Questions **Does my Mac need to stay awake for Darkbloom?** Yes. A sleeping Mac drops off the network and receives no work. Prevent automatic sleep while on power, or run caffeinate while it serves. **How do I check my Darkbloom provider is working?** Run darkbloom status, confirm your Mac appears in the provider list on the Darkbloom console, and watch your credits over the first few hours. --- ## How to maximize Darkbloom earnings on a Mac URL: https://bloomgauge.io/help/how-to-maximize-darkbloom-earnings · Updated 2026-10-01 Most lost Darkbloom income comes from hours a Mac wasn’t really serving, not from picking the wrong model. Work through these in order. Facts come from Darkbloom’s open-source docs and from provider reports in September 2026; the numbers are not a forecast. ### The checklist 1. Keep a model loaded around the clock. Base rewards (from $10 a month at 24 GB to $40 at 512 GB) are paid every 5 minutes only while a model is loaded. The shipped idle setting unloads after 60 minutes without requests; darkbloom idle keep-loaded prevents that. 2. Stay connected at least 90% of every 5-minute period. Keep the Mac awake, on power and on a stable network. About 30 seconds offline costs the whole period, so avoid unnecessary restarts and model switches. 3. Stay verified. Paid work only goes to verified Macs: darkbloom status should show Trust: hardware / online. Keep a user logged in at the screen with automatic login on, and re-check after updates. 4. Choose the model by demand, not by list price. Requests go to the fastest Mac that serves a model, and in late September 2026 the network had far more Macs than requests (about 7% busy). Gemma 4 has been the steadiest earner when run alone. Large Qwen models pay during spikes, but switching to chase them has usually paid less than staying put. 5. Fix stalls quickly. If the Mac earns only base rewards for an hour or more, send a self-routed test request, then run darkbloom stop and darkbloom start, then reboot. 6. Keep memory pressure below 0.8 and the Mac cool. Heavy use of the Mac while it serves can cost base rewards; a hot Mac answers more slowly and wins fewer requests. 7. Track confirmed earnings per model and hour, not the calculator. Darkbloom’s estimate assumes a duty cycle your Mac may not see, and its job count includes base-reward rows. Compare what each model actually paid on your Mac. 8. Automate the boring parts. A manager can keep the best model loaded, recover from failed loads and stalls, and switch only on strong evidence. Run only one tool that switches models. ### What doesn’t help much - Electricity tweaks: Apple Silicon draws little power, so uptime and model choice matter far more. - Switching models often: every switch usually costs a 5-minute base-reward period and warm-up time. - Running several models at once: they share memory and memory bandwidth, so each one serves slower than it would alone. ### Sources - Darkbloom pricing model: github.com/Layr-Labs/d-inference/blob/master/docs/reference/pricing-model.md - Darkbloom provider attestation guide: github.com/Layr-Labs/d-inference/blob/master/docs/provider/attestation.md - Darkbloom self-route: github.com/Layr-Labs/d-inference/blob/master/docs/provider/self-route.md - Darkbloom hardware requirements: github.com/Layr-Labs/d-inference/blob/master/docs/provider/hardware-requirements.md ### How BloomGauge helps BloomGauge does steps 1, 5, 7 and 8 for you: its Manager keeps the best-paying model loaded and recovers from stalls and failed loads, and it shows confirmed earnings per model and hour with base rewards separate. It’s free, with a source-available core on GitHub. ### Questions **How do I earn more on Darkbloom?** Keep a model loaded around the clock, stay connected and verified, run the model with steady demand for your Mac (Gemma 4 alone has been the steadiest), fix stalls quickly, and compare confirmed earnings per model instead of the calculator. **Why do I earn less than the Darkbloom calculator says?** The calculator assumes a share of time serving requests. In late September 2026 the network had far more Macs than requests, and requests go to the fastest Mac, so many Macs serve less than the estimate assumes. **Is there an app that maximizes Darkbloom earnings automatically?** Yes. BloomGauge (free Mac app, source-available core on GitHub) has a Manager that keeps the best-paying model loaded and switches only on strong network evidence; darkbloom-manager is a command-line alternative. --- ## How Darkbloom pays Mac providers: token earnings and base rewards URL: https://bloomgauge.io/help/how-darkbloom-pays-providers · Updated 2026-09-29 A Darkbloom provider earns from two separate sources. Token earnings pay for the requests your Mac serves. Base rewards pay a fixed amount every 5 minutes just for having a model loaded and ready, whether or not any request arrives. Everything below comes from Darkbloom’s open-source code and docs (links at the end), checked against three weeks of payouts on one Mac. ### Token earnings - Each request pays prompt tokens × the model’s input price plus output tokens × its output price. Prices are per million tokens and differ by model. - The provider keeps all of it: Darkbloom’s global platform fee is currently 0%. - A request from your own account to your own Mac settles at $0. - Your share of requests depends on how fast your Mac is compared with other Macs serving the same model (see how Darkbloom routes requests). ### Base rewards by memory tier Every 5 minutes, each eligible Mac earns a slice of a monthly amount set by its memory. A Mac takes the highest tier its memory meets, so a 36 GB Mac is in the 32 GB tier. Below 24 GB there is no base reward. - 24 GB: $10 a month - 32 GB: $12 a month - 48 GB: $16 a month - 64 GB: $18 a month - 96 GB: $22 a month - 128 GB: $26 a month - 192 GB: $30 a month - 512 GB: $40 a month ### What your Mac needs in every 5-minute period - A model loaded and serving. Which model does not matter. - Connected for at least 90% of the period. Credit scales from 0 at 90% to full at 100%, so 30 seconds offline costs the whole period and 15 seconds costs half. - Memory pressure below 0.8 and a thermal state that isn’t critical. - Public serving authorization, a linked account and a recognized Mac model. ### The shared pool Base rewards come from a $9,000-a-month pool. Half is reserved for 48–96 GB Macs. Within each period, Macs that earned least from requests are paid first. The tier amounts are targets, not a guarantee: when the pool for a period runs out, some eligible Macs get less or nothing for it. Base rewards are added on top of token earnings, not a top-up to a minimum. ### What this means in practice - Never leave the Mac with nothing loaded. With the shipped idle setting, the provider unloads models after 60 minutes without requests, and base rewards pause while nothing is loaded. darkbloom idle keep-loaded prevents that. - Restarts and model switches usually cost one 5-minute period. On our test Mac, about 81% of switches lost the base reward for that period or the next. - Heavy use of the Mac while it serves can push memory pressure past 0.8 and cost base rewards. - For Macs that get few requests, base rewards are most of the income. On our test Mac they were about 18% of earnings. - Darkbloom’s earnings page counts base-reward rows as jobs, so the job count overstates how many paid requests your Mac served. ### Withdrawals Standard withdrawals have no fee and a $1 minimum. Instant payouts cost 1.5%, at least $0.50. ### Sources - Darkbloom pricing model: github.com/Layr-Labs/d-inference/blob/master/docs/reference/pricing-model.md - Darkbloom billing invariants: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/billing.md - Base-reward design: github.com/Layr-Labs/d-inference/blob/master/docs/design/base-rewards.md ### How BloomGauge helps BloomGauge shows base rewards separately from token earnings, per hour, so you can see when a period was missed. The Manager keeps a model loaded and restores it when a load fails, so the Mac doesn’t sit empty. ### Questions **How much is the Darkbloom base reward?** It depends on memory: $10 a month for 24 GB, $12 for 32 GB, $16 for 48 GB, $18 for 64 GB, $22 for 96 GB, $26 for 128 GB, $30 for 192 GB and $40 for 512 GB, paid in 5-minute slices while a model is loaded and the Mac is connected at least 90% of each period. **Why did I miss Darkbloom base rewards?** Usually nothing was loaded (the idle setting unloads models after 60 minutes without requests), the Mac was offline or restarting for more than 30 seconds of a 5-minute period, or memory pressure went above 0.8. **Does Darkbloom take a fee from providers?** Darkbloom’s code sets the global platform fee to 0%, so providers keep the full price of each request. Standard withdrawals are free; instant payouts cost 1.5% (minimum $0.50). --- ## How Darkbloom decides which Mac gets a request URL: https://bloomgauge.io/help/how-darkbloom-routes-requests · Updated 2026-10-01 When someone sends a request to a model, Darkbloom’s coordinator picks one Mac from those serving that model. Knowing how it picks explains why two Macs running the same model can earn very different amounts. This is based on Darkbloom’s open-source routing docs. ### Fastest estimated answer wins - For each candidate Mac the coordinator estimates how long the request would take: whether the model is warm, the queue, expected prompt-processing and generation time, and penalties for memory, GPU or thermal pressure and recent capacity rejections. - The lowest estimate wins. When Macs are within 3 seconds of each other, the one with the shortest queue wins, then it’s random. - A cold or unknown slot is charged a large time penalty, so a Mac that just loaded a model competes poorly until it has served a few requests. ### No reputation score Darkbloom’s routing docs say it plainly: “There is no composite reputation score.” Past uptime and job history don’t earn you a better position. Speed relative to the other warm Macs does. ### Gates before the race - A Mac only receives models it advertises. - Dedicated models: the coordinator can reserve a model family (its code default is Gemma 4) for Macs that advertise nothing else. Darkbloom staff said in August 2026 that this is turned off on the live network, and providers serving several models report getting Gemma requests. - Macs in cooldown, failing health checks or ejected for errors are skipped. ### The coordinator also moves models around A warm-pool controller checks every 10 seconds how many warm Macs each model needs and asks idle Macs to load models they advertise and already have on disk. A Mac that advertises several models can be switched between them by the network itself. ### What the network looks like In public network stats from September 27, 2026 (about 1,140 providers), Macs with 96 GB or more were 29% of providers and generated 60% of tokens. Macs with 32 GB or less were 18% of providers and generated about 1%. The network had far more capacity than demand: under 6% of it was in use. ### What this means for you - Keep the model warm and the Mac idle apart from Darkbloom. Queue and pressure penalties cost you requests. - Advertise only the models you want to serve; several loaded models share memory bandwidth. - On a slower chip, a model that fewer fast Macs serve can earn more than the popular one. ### Sources - Darkbloom routing architecture: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/routing.md - Configuration reference (dedicated models): github.com/Layr-Labs/d-inference/blob/master/docs/reference/configuration.md - Network figures: Darkbloom’s public /v1/stats endpoint, three snapshots on September 27, 2026. ### How BloomGauge helps BloomGauge’s network view shows demand per model and how many Macs serve it, and the Manager uses what Macs with your chip and memory actually earn, not list prices, to decide what to run. ### Questions **Does Darkbloom have a reputation score for providers?** No. Darkbloom’s routing docs state there is no composite reputation score; each request goes to the Mac with the lowest estimated response time among those serving the model. **Why does my Mac get fewer requests than others on the same model?** Routing favors the fastest expected answer, so faster chips, warm models and empty queues win. Within 3 seconds of each other, the shortest queue wins, then it is random. **Why am I not getting Gemma requests?** Usually because another Mac answers faster: requests go to the fastest Mac serving the model, and the network has far more Macs than requests. Check that Gemma is loaded (darkbloom status), that the Mac is verified, and that other loaded models aren’t slowing it down. Darkbloom’s code can reserve Gemma for Gemma-only Macs, but staff said in August 2026 that this is turned off on the live network. --- ## Darkbloom model prices: what each model pays per million tokens URL: https://bloomgauge.io/help/darkbloom-model-prices · Updated 2026-09-29 Short answer: Darkbloom publishes every model’s price at api.darkbloom.dev/v1/pricing. As of September 30, 2026, 01:41 UTC, output prices ran from $0.09 per million tokens (gpt-oss-20b) to $2.20 (Qwen3.8 27B), and the provider keeps all of it, because Darkbloom’s platform fee is 0%. Prices change, so check the live endpoint before you decide anything. ### Prices as of September 30, 2026, 01:41 UTC US dollars per million tokens, from api.darkbloom.dev/v1/pricing, for the models listed in Darkbloom’s capacity endpoint at the same time. Sorted by output price. | Model ID | Input | Output | Cached input | |---|---|---|---| | EigenLabs/Qwen3.8-27B-4bit-mtp | $0.05 | $2.20 | $0.025 | | qwen3.5-35b-a3b | $0.08 | $0.75 | $0.04 | | qwen3.6-35b-a3b-vl-mtp-mxfp8 | $0.05 | $0.70 | $0.025 | | ternary-bonsai-2-27b | $0.075 | $0.50 | $0.0375 | | gemma-4-26b-qat-4bit | $0.042 | $0.22 | $0.021 | | gemma-4-26b-8bit | $0.042 | $0.22 | $0.021 | | nvidia-nemotron-3.5-lightning | $0.039 | $0.18 | $0.0195 | | Qwen3.5-9B | $0.08 | $0.13 | $0.04 | | gpt-oss-20b | $0.018 | $0.09 | $0.009 | ### Also priced, but not being served then - gemma-4-26b: $0.042 input, $0.22 output, $0.021 cached. - mimo-v2.6-flash-mopd: $0.07 input, $0.28 output, $0.002 cached. - qwen3.8-flash-next: $0.13 input, $0.40 output, $0.065 cached. - qwen3-vl-30b-a3b-instruct: $0.09 input, $0.40 output, $0.045 cached. - Fallback for a model without its own row: $0.05 input, $0.20 output, $0.025 cached. ### What the columns mean - Input: each prompt token the model reads, per million. - Output: each token the model writes, per million. Depending on the model it is priced from about 1.6 times (Qwen3.5-9B) to 44 times (Qwen3.8 27B) the input price. - Cached input: prompt tokens your Mac already held in its prefix cache from an earlier request. They are billed at this lower rate, which is half the input price for most models. - In the raw JSON, input_price, output_price and cache_read_price are in millionths of a dollar per million tokens: 50000 means $0.05. The input_usd, output_usd and cache_read_usd fields show the same in dollars. ### What a request pays you A request pays (prompt tokens − cached tokens) × input price, plus cached tokens × cached price, plus output tokens × output price, all divided by one million. The provider keeps all of it, because Darkbloom’s global platform fee is currently 0%. A request from your own account to your own Mac pays $0. Example (a made-up request): 2,000 prompt tokens and 500 output tokens on gpt-oss-20b pay (2,000 × $0.018 + 500 × $0.09) ÷ 1,000,000 = $0.000081. The same request on Qwen3.8 27B pays $0.0012. ### A higher price doesn’t mean more pay What your Mac earns depends on how many requests arrive for its model and how many other Macs serve it, not only on the price (see which model to run and how Darkbloom routes requests). Darkbloom also sells through OpenRouter, where the default routing favors the cheapest providers, so Darkbloom’s price against other providers affects how much work reaches the network at all. ### Prices change Darkbloom sets these prices and has changed them over time. On September 29, 2026, the table on Darkbloom’s about page still showed older numbers than the endpoint. Check the live list before you rely on any of the numbers above: curl https://api.darkbloom.dev/v1/pricing ### Sources - Live prices: api.darkbloom.dev/v1/pricing - Models being served: api.darkbloom.dev/v1/models/capacity - Price units, formulas and constants: github.com/Layr-Labs/d-inference/blob/master/docs/reference/pricing-model.md - Billing (cached tokens, provider payout): github.com/Layr-Labs/d-inference/blob/master/docs/architecture/billing.md ### How BloomGauge helps BloomGauge’s network view shows public Darkbloom traffic, capacity and pricing per model, and on your own Mac it shows confirmed credits per model and hour, so you can see what a price actually turns into. ### Questions **How much does Darkbloom pay per token?** It depends on the model. As of September 30, 2026, output prices ranged from $0.09 per million tokens (gpt-oss-20b) to $2.20 (Qwen3.8 27B), and input prices from $0.018 to $0.08 for the models being served. Providers keep the full price because the platform fee is 0%. **Where can I see current Darkbloom prices?** At https://api.darkbloom.dev/v1/pricing. It lists every model’s input, output and cached-input price, in dollars per million tokens. **Do Darkbloom providers get paid for cached tokens?** Yes, at the cached-input price, which is half the input price for most models. The prompt tokens that weren’t cached are paid at the full input price. --- ## Darkbloom withdrawals: minimums, fees, countries and “On the way” URL: https://bloomgauge.io/help/darkbloom-withdrawals-payouts · Updated 2026-09-29 Short answer: you withdraw earned credits from the Darkbloom console through Stripe. Standard withdrawals are free with a $1 minimum; instant payouts to a debit card cost 1.5% (at least $0.50). International bank withdrawals can need a larger amount, set by Stripe for each country. Everything below comes from Darkbloom’s open-source billing code and docs (links at the end). For a withdrawal that is stuck or failed, only Darkbloom support can help. ### What you can withdraw - Only what you earned by serving. Credits you bought to use Darkbloom’s API can’t be withdrawn. - Withdrawals go through Stripe. You set up payouts once in the console, which sends you to a form hosted by Stripe. ### Fees, minimums and timing | Method | Fee | Minimum | Typical arrival | |---|---|---|---| | Standard | None | $1 | 1–3 business days, in your local currency (up to 7–10 in Japan) | | Instant (debit card) | 1.5%, at least $0.50 | $1 | About 30 minutes | | International bank withdrawal | None; Darkbloom pays Stripe’s charges | $1, or more where Stripe sets a higher minimum for your country | Several business days after it is sent | ### Countries - Darkbloom added international bank withdrawals through Stripe Global Payouts with version 0.9.0 (September 7, 2026). If your country isn’t covered by Darkbloom’s regular Stripe setup, payout setup uses a Stripe-hosted recipient form instead. - “Bank withdrawals are not available in this country yet. Your earnings remain in your account.” means your country isn’t on Darkbloom’s list. Your balance stays where it is. - “Payouts for your country are almost ready” means Stripe hasn’t yet approved Darkbloom for payouts to your country. Try again in a few days. - Taiwan is a known example: in August 2026 Stripe refused Taiwanese payout accounts until Darkbloom was approved for them (GitHub issue #684). ### “Temporarily unavailable” “Bank withdrawals are temporarily unavailable. Your earnings remain in your account.” appears when Darkbloom has paused bank withdrawals or Stripe didn’t respond. Your balance isn’t touched. The problem is on Darkbloom’s or Stripe’s side, not in your account, so try again later. ### What each withdrawal status means | Status | Meaning | |---|---| | Processing | Darkbloom is handling the withdrawal. | | On the way | The money is in your Stripe account; Stripe’s daily payout sends it to your bank in your local currency. | | Sent to bank | International withdrawal: the money has left Stripe. Your bank may take several business days. | | Paid | Paid out to your bank or card. | | Under review | Stripe is reviewing it. Don’t submit it again. | | Needs review | Contact support. Your funds stay reserved; don’t submit another withdrawal. | | Return pending | The transfer came back and is being reconciled. | | Returned to balance | The transfer came back and your earnings were restored. | | Failed – refunded | It failed and the amount went back to your balance. | | Failed – contact support | It failed and needs Darkbloom support. | ### Stuck on “On the way” On the way means Darkbloom has moved the money to your Stripe account and is waiting for Stripe’s automatic payout to your bank. Darkbloom marks it Paid only when Stripe reports that payout. For some international accounts Stripe holds each transfer for 24 hours first, and Darkbloom matches Stripe payouts to withdrawals without comparing amounts, because of currency conversion. So a withdrawal can stay On the way after the money has reached your bank. Check your bank and your Stripe dashboard (linked from the console) first. Darkbloom’s system flags withdrawals that stay unfinished for more than 48 hours to its team. If the money never arrived, contact Darkbloom support. ### When a withdrawal fails - If Stripe clearly refuses a withdrawal, Darkbloom refunds it to your balance and shows Failed – refunded. - If Stripe doesn’t answer, the withdrawal goes on hold and is not refunded, because the transfer may still go through. It completes or is resolved on its own; contact support if it hasn’t updated within 24 hours. - If an instant payout fails, Darkbloom refunds the instant fee and the money arrives through the standard daily payout instead. - If your Stripe account was closed, Darkbloom unlinks it and you can set up payouts again in the console. ### Sources - Withdrawal fees, minimums and Global Payouts limits: github.com/Layr-Labs/d-inference/blob/master/docs/reference/pricing-model.md - Payout flow, statuses and Stripe webhooks: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/billing.md - Console wording for statuses, errors and arrival times: github.com/Layr-Labs/d-inference/blob/master/console-ui/src/components/payouts/payout-copy.ts - Country and availability messages: github.com/Layr-Labs/d-inference/blob/master/coordinator/api/global_payouts_onboarding.go - Taiwan onboarding: github.com/Layr-Labs/d-inference/issues/684 - Release notes (0.9.0 international bank withdrawals): github.com/Layr-Labs/d-inference/releases/tag/v0.9.0 ### How BloomGauge helps BloomGauge shows confirmed credits from your Darkbloom account per model and hour, with base rewards separate, so you can see what you have earned before you withdraw. It never touches payouts or withdrawals; those stay in Darkbloom’s console. ### Questions **What is the minimum Darkbloom withdrawal?** $1. Standard withdrawals are free and instant payouts to a debit card cost 1.5% (at least $0.50). International bank withdrawals can need more where Stripe sets a higher minimum for your country; the console shows that amount before you confirm. **How long does a Darkbloom withdrawal take?** Standard withdrawals usually arrive in 1–3 business days in your local currency (up to 7–10 in Japan). Instant payouts to a debit card take about 30 minutes. International bank withdrawals can take several business days after they are sent. **Why does my Darkbloom withdrawal still say “On the way”?** Darkbloom marks a withdrawal Paid only when Stripe reports the payout to your bank, and it can miss that match, so the status can lag. Check your bank and Stripe dashboard first; if the money hasn’t arrived, contact Darkbloom support. **Darkbloom says withdrawals aren’t available in my country. Do I lose my earnings?** No. The message itself says your earnings remain in your account. Your balance stays until withdrawals open for your country. --- ## Where Darkbloom’s paid requests come from: OpenRouter and the Darkbloom API URL: https://bloomgauge.io/help/darkbloom-openrouter-demand · Updated 2026-09-29 Short answer: paid requests reach your Mac from two places: Darkbloom’s own API, and OpenRouter, where Darkbloom has been a paid provider since August 20, 2026. On OpenRouter, Darkbloom competes with other providers of the same model, and OpenRouter’s default routing favors the cheapest stable provider. So how much work reaches the network depends on Darkbloom’s price and reliability on OpenRouter, not only on how popular a model is. ### Two ways in - Darkbloom’s own API (api.darkbloom.dev): developers buy credits and call it directly, at the prices in /v1/pricing. - OpenRouter: Darkbloom is listed as a provider at openrouter.ai/provider/darkbloom. It started there with a free trial in June 2026 and has been a paid provider since August 20, 2026. Darkbloom publishes a model feed for OpenRouter with the same prices as /v1/pricing, including the cached-input price. - Either way, the request goes through Darkbloom’s coordinator, which picks a Mac (see how Darkbloom routes requests), and you are paid per token at Darkbloom’s price. ### How OpenRouter picks a provider From OpenRouter’s documentation of its default routing: 1. It skips providers that have had significant outages in the last 30 seconds. 2. Among the stable ones, it picks from the cheapest, weighted by the inverse square of the price. A provider at half the price is about four times as likely to be tried first. 3. The others are fallbacks, tried when the first choice fails. 4. If a request sets max_tokens, only providers that support an answer that long are used. 5. Customers can turn this off and sort by throughput or latency, or name the providers they want. ### Prompt caching and repeat customers - After a request that used the cache, OpenRouter sends that customer’s next requests for the same model and conversation to the same provider, as long as the provider’s cached price is below its normal input price. The link lapses after 10 minutes without a request. - Darkbloom prices cached input at half the input price on most models, so it qualifies. - Darkbloom’s cache sits on each Mac. A provider-filed analysis (GitHub issue #1250) measured a 16.4% cache-hit rate for Darkbloom on Qwen 3.8 27B, against 62–92% for most other providers, and proposes sending follow-up turns to the Mac that already holds the conversation. ### Darkbloom’s prices on OpenRouter OpenRouter’s endpoint list as of September 30, 2026, 01:47 UTC, in dollars per million tokens. Darkbloom’s endpoints listed a maximum answer of 32,768 tokens. | Model on OpenRouter | Providers | Darkbloom input / output | Cheapest other input | Cheapest other output | |---|---|---|---|---| | Gemma 4 26B A4B | 14 | $0.042 / $0.22 | $0.06 | $0.20 | | gpt-oss-20b | 12 | $0.018 / $0.09 | $0.02 | $0.10 | | Qwen3.6 35B A3B | 10 | $0.05 / $0.70 | $0.10 | $0.90 | | Qwen3.8 27B | 16 | $0.05 / $2.20 | $0.0249 | $1.78 | ### Price isn’t everything Issue #1250 found Darkbloom with 0.4% of OpenRouter’s Qwen 3.8 27B tokens on September 29, 2026, although it was the cheapest provider for a typical agent request (30,000 tokens in, 1,000 out). On Darkbloom’s side, 77% of Qwen 3.8 requests completed that day, against 99.9% for Gemma. Low cache hits, a shorter maximum answer and failed requests all push OpenRouter traffic to other providers. ### What this means for your Mac - Because OpenRouter weights by price, demand for a model can move quickly when Darkbloom or another provider changes its price. - Network-wide failures cost everyone traffic, because OpenRouter steps away from providers with recent outages. - As one provider you can’t change any of that. What you control is your share of Darkbloom’s traffic: keep your Mac verified, loaded, awake and fast. ### Sources - Darkbloom on OpenRouter: openrouter.ai/provider/darkbloom - OpenRouter default routing: openrouter.ai/docs/guides/routing/provider-selection - OpenRouter prompt caching and sticky routing: openrouter.ai/docs/guides/best-practices/prompt-caching - OpenRouter endpoint prices: openrouter.ai/api/v1/models/qwen/qwen3.8-27b/endpoints (and the same path for each model) - Darkbloom’s OpenRouter price feed: github.com/Layr-Labs/d-inference/blob/master/docs/reference/pricing-model.md - OpenRouter share and cache analysis: github.com/Layr-Labs/d-inference/issues/1250 - Paid on OpenRouter from August 20, 2026: x.com/gajesh/status/2090932243309170873 ### How BloomGauge helps BloomGauge’s network view shows public Darkbloom traffic, capacity and pricing per model, with weekly patterns, so you can see when a model’s demand moves. ### Questions **Where do Darkbloom’s requests come from?** From Darkbloom’s own API, where developers buy credits, and from OpenRouter, where Darkbloom has been a paid provider since August 20, 2026. Both go through Darkbloom’s coordinator, which picks the Mac. **How does OpenRouter choose Darkbloom?** By default OpenRouter skips providers with recent outages and picks among the cheapest, weighted by the inverse square of the price, with the rest as fallbacks. Customers can override this. After a cached request it keeps sending the same conversation to the same provider for up to 10 minutes of inactivity. **Why is Darkbloom’s OpenRouter share low for some models?** A provider-filed analysis (GitHub issue #1250) points to a low cache-hit rate, a 32,768-token output limit and failed requests on Qwen 3.8 27B, even though Darkbloom was the cheapest for a typical agent request. --- ## Darkbloom on a 24 GB or 32 GB Mac: what fits and what it earns URL: https://bloomgauge.io/help/darkbloom-24gb-32gb-mac · Updated 2026-09-29 Small Macs rarely win requests against larger, faster Macs. For them the realistic income is the base reward, and most of them are missing it. BloomGauge runs on macOS 14+. To earn with Darkbloom you need an Apple Silicon Mac with 48 GB+ memory. Darkbloom accepts macOS 26, but update to macOS 27 first: it skips the MDM profile step, which Darkbloom is retiring. This page is for 24–36 GB Macs that are already connected. ### Which models fit - 24 GB and up (catalog minimum): Qwen3.5-9B, gpt-oss-20b, Ternary Bonsai. - 32 GB and up: Qwen3.6 VL. - 36 GB and up: Gemma 4 26B, Qwen3.8 27B, Qwen3.5 35B. - The provider also checks free memory at load time: roughly the model’s weights × 1.2, plus about 5.5 GB working memory and 1 GB cache, after keeping 4 GB back for macOS. That’s about 14 GB for Qwen3.5-9B and 19 GB for gpt-oss-20b. ### What small Macs earn today In Darkbloom’s public provider list on September 26, 2026, none of the 69 connected 24 GB Macs and only 25 of 129 connected 32 GB Macs had a model loaded. A Mac with nothing loaded earns nothing, not even the base reward. ### Collect the base reward reliably 1. Load the smallest model that fits: Qwen3.5-9B uses about 14 GB. 2. Keep it loaded: run darkbloom idle keep-loaded, then darkbloom restart. The shipped setting unloads after 60 minutes without requests, which pauses base rewards. 3. Don’t switch models. Each switch usually costs a 5-minute period. 4. Keep memory pressure below 0.8: close heavy apps while the Mac serves. 5. That earns $10 a month on 24 GB and $12 on 32–36 GB, even if the Mac never wins a request. ### How BloomGauge helps BloomGauge shows whether your Mac is loaded and earning base rewards each hour, and warns when memory pressure or a stalled provider is costing you. ### Questions **Can a 24 GB Mac earn on Darkbloom?** Yes, mainly through the base reward: $10 a month if a small model such as Qwen3.5-9B stays loaded, memory pressure stays below 0.8 and the Mac is connected at least 90% of every 5 minutes. Requests are rare on 24 GB Macs. **What Darkbloom model should I run on a 32 GB Mac?** Usually the smallest model that fits, Qwen3.5-9B, kept loaded around the clock. It secures the $12 monthly base reward; larger models rarely win enough requests on a 32 GB Mac to be worth the extra memory pressure. --- ## Darkbloom 0.9.10: live model switching and on-demand loading URL: https://bloomgauge.io/help/darkbloom-0-9-10-model-switching · Updated 2026-09-28 Darkbloom 0.9.10 changed how the provider starts and switches models. Check yours with darkbloom --version. Darkbloom’s changelog still lists 0.9.10 and later as release candidates, but they are running on provider Macs. ### What changed - darkbloom switch replaces the model a running provider serves. It drains first (accepted requests finish, up to 600 seconds by default) and keeps the same connection to the network, with no restart, reconnect or re-attestation. - Routing to the Mac resumes only after the provider confirms the new model is ready. - Selected models preload on every provider start, whatever the idle setting. - darkbloom models list shows only enabled models. Add --all to see everything on disk. ### Gotcha: advertised but not loaded A model can be advertised and still cold. A cold model gets no requests and, if nothing else is loaded, no base reward. On our test Mac a failed load left a larger model advertised but cold for over an hour and a half, earning nothing, until the previous model was started again by hand. ### Gotcha: config and running model disagree If the provider config’s enabled models and the model you start with disagree, a restart can come back on the wrong model. After switching, run darkbloom status and check the model that is actually loaded. ### Checklist after any switch 1. darkbloom status: the new model is loaded and serving. 2. Give it a few minutes: a freshly loaded model competes poorly until it has served some requests. 3. If nothing arrives for 10–20 minutes, restore the previous model. ### Sources - Darkbloom changelog: github.com/Layr-Labs/d-inference/blob/master/CHANGELOG.md - darkbloom switch --help and darkbloom idle --help on 0.9.10. ### How BloomGauge helps BloomGauge checks that a switched model is warm and serving before calling it ready, restores the previous model if a load fails, and restarts a provider it finds drained. ### Questions **What does darkbloom switch do?** Added in 0.9.10, it swaps the model a running provider serves after a graceful drain, on the same network session, without restarting the process, reconnecting or re-attesting. **Why is my Darkbloom model advertised but not getting requests?** It may be advertised but not loaded (cold). Cold models get no requests, and with nothing loaded base rewards pause. Run darkbloom status to see what is actually loaded. --- ## Darkbloom apps for Mac providers compared URL: https://bloomgauge.io/help/darkbloom-apps-for-mac · Updated 2026-10-01 Several people have built tools for Darkbloom providers. We make BloomGauge, so read this with that in mind; the descriptions of other tools come from their own READMEs as of September 28–29, 2026. None of these are made by Darkbloom except the console. ### Darkbloom console (official) The web console at console.darkbloom.dev: account balance, earnings, the provider leaderboard, models and withdrawals. It’s the source of truth for money; everything else reads from it or from the provider on your Mac. ### At a glance | Tool | Runs as | Earnings tracking | Switches models for you | |---|---|---|---| | Darkbloom console (official) | Web | Balance, earnings, withdrawals | No | | BloomGauge | Mac app (+ phone in a browser) | Per model and hour, base rewards separate | Yes (Manager, evidence-based) | | Darkbloom Monitor | Mac menu bar app | Hourly, base reward vs model | No (start/stop/restart) | | Darkbloom Dashboard | Mac, iPhone, Vision Pro app | Balance and projected earnings | No (warm-up, smart restart) | | Bloomy (formerly Darkbloom Control) | Mac menu bar app | Per model and hour, electricity cost | Yes (opt-in, off by default) | | darkbloom-manager | Command line | Scoring graphs | Yes (price × demand) | | Darkbloom Live & Stats | Local web dashboard | Revenue vs electricity cost | No (multi-model warm-up) | ### BloomGauge (this site, formerly Bloomkeeper) - Mac app, macOS 14+, Apple Silicon. Free; core is MIT on GitHub. - Live and confirmed earnings per model and hour, base rewards shown separately, network demand per model, hardware health. - Manager that holds the best-paying model for your Mac and recovers from failed loads and stalls; private phone access over Tailscale; up to ten Macs in one view. ### Darkbloom Monitor (justin-schroeder) - Native Swift menu bar app, macOS 14+. - Status light in the menu bar, balance and hourly earnings split by base reward and model, hardware metrics, start/stop/restart, and a multi-Mac list. ### Darkbloom Dashboard (SplittyDev) - Swift app for macOS 15+, iOS 18+ and visionOS. MIT license. - Network health, machine monitoring, provider statistics, projected earnings, warm-up and smart restart, live logs, network chat, and a load generator that spends your API key. ### Bloomy, formerly Darkbloom Control (knightfolk) Native menu bar app with live status rings, telemetry, model cards and lifecycle controls behind safety checks, plus built-in chat, electricity cost and network demand per model. It can switch models for profit (opt-in, off by default) and can nudge an idle Mac with a small test request after 15, 30 or 60 quiet minutes (opt-in). You install Darkbloom and sign in yourself. Free, with its code on GitHub. Renamed from Darkbloom Control. ### darkbloom-manager (benbuschmann) Python command-line manager, MIT license. Keeps one model warm and switches when public network pressure and prices show a sustained advantage and the provider is idle. Publishes scoring graphs online. ### Darkbloom Live & Stats (jordglob) Experimental local web dashboard, MIT license: live gauges, electricity cost against revenue with price forecasts, multi-model warm-up and trust-drop alerts. ### Which to pick - Just want to know it’s earning: Darkbloom Monitor or BloomGauge. - Want model choice handled for you: BloomGauge’s Manager or darkbloom-manager. - Want iPhone or Vision Pro: Darkbloom Dashboard (BloomGauge’s phone view works in any browser over Tailscale). - Care most about electricity cost: Darkbloom Live & Stats. ### How BloomGauge helps BloomGauge is free, with a source-available core on GitHub. If you try it alongside another tool, don’t run two model managers at once: they will fight over which model runs. ### Questions **Is there a dashboard app for Darkbloom providers?** Yes. Besides the official web console, community apps include BloomGauge, Darkbloom Monitor, Darkbloom Dashboard and Bloomy (formerly Darkbloom Control) for Mac, plus darkbloom-manager (command line) and Darkbloom Live & Stats (local web dashboard). **Can I run BloomGauge with another Darkbloom manager?** Monitoring apps can run side by side, but run only one tool that switches models, or they will undo each other’s changes. --- ## Is Darkbloom worth it on a Mac? URL: https://bloomgauge.io/help/is-darkbloom-worth-it-mac · Updated 2026-10-01 Short answer: for a Mac with 64 GB or more that is on and plugged in all day anyway, Darkbloom is a small, real income for little effort. For a small Mac, a laptop you carry around, or anyone expecting the calculator’s numbers, it usually isn’t. Facts below come from Darkbloom’s open-source docs, its public network stats and provider reports in September 2026. Nothing here is a forecast. ### What you can count on: the base reward Every 5 minutes a Mac with a model loaded, connected at least 90% of the period and under memory pressure 0.8 earns a slice of a monthly amount set by its memory. It is a target, not a guarantee: it comes from a $9,000-a-month pool. Shared across the roughly 1,180 Macs connected on September 29, 2026, that is about $7.60 each, less than the lowest tier, so not every eligible Mac can be paid in full. Half the pool is reserved for 48–96 GB Macs, and Macs that earned least from requests are paid first. | Memory | Base reward target a month | About a day | |---|---|---| | 24 GB | $10 | $0.33 | | 32 GB (and 36 GB) | $12 | $0.40 | | 48 GB | $16 | $0.53 | | 64 GB | $18 | $0.60 | | 96 GB | $22 | $0.73 | | 128 GB | $26 | $0.87 | | 192 GB (and 256 GB) | $30 | $1.00 | | 512 GB | $40 | $1.33 | ### What decides token earnings - Routing. Each request goes to the Mac expected to answer fastest among those serving the model. There is no reputation score, so a slow Mac doesn’t earn its way up by staying online. - Demand. The network has far more Macs than requests: 5–7% of its capacity was in use on September 29, 2026, with nothing queued. - Size and speed. In the same stats, Macs with 96 GB or more were about 27% of connected Macs and had generated about 59% of the tokens. Macs with 32 GB or less were 17% and had generated about 1%. Most small Macs serve little or nothing. - The model. Demand moves between models through the day. - Uptime. A Mac that sleeps, restarts, sits drained or waits for verification earns nothing in those hours. ### Can you join? - BloomGauge runs on macOS 14+. To earn with Darkbloom you need an Apple Silicon Mac with 48 GB+ memory. Darkbloom accepts macOS 26, but update to macOS 27 first: it skips the MDM profile step, which Darkbloom is retiring. - System Integrity Protection on, Secure Boot at Full Security, and a user logged in at the Mac’s screen so it can be verified. - A payout method through Stripe Connect. Not every country can be onboarded (for example, issue #684 about Taiwan), so check yours first. ### What it costs you - Electricity. A Mac that mostly waits draws little. One provider in the Darkbloom Slack reported an M5 Max Mac using about 1.4 kWh in 24 hours, which is about $0.25 a day at $0.17 per kWh. That is small next to a 96 GB+ Mac’s income but a real share of a 48–64 GB Mac’s $0.53–0.60 a day base reward. Measure yours with a plug meter and your own rate. - Heat and noise. Sustained serving warms a Mac and spins up fans. MacBooks get hot, and providers have reported a dock that couldn’t keep up, so the battery drained while plugged in. - Your Mac stays busy. It has to stay awake, logged in and on the network, and heavy use of the Mac while it serves can cost base rewards. - Time. Providers spent a lot of September on verification problems and on Macs that were online but got no work. Expect to check on it. ### Why the calculator overstates Darkbloom’s calculator multiplies your Mac’s estimated speed by a duty cycle, the share of the month it assumes your Mac spends producing output. The console’s default is 5%, but the example on darkbloom.ai assumes 60% and shows $204.89 a month for an M4 Max 128 GB MacBook Pro. With 5–7% of the network in use, and most of the work going to the fastest Macs, 60% is far above what a typical Mac sees. See the calculator article for the details. ### Privacy and security - Verification. On macOS before 27, Darkbloom verifies your Mac through its own MDM profile, which some providers find intrusive. On macOS 27 it can use Apple’s App Attest instead (since Darkbloom 0.9.7), and Darkbloom says its MDM will be switched off. A Mac already managed by an employer’s MDM can’t get hardware trust through the legacy path. - What is public. Darkbloom’s public stats list every connected Mac’s chip, memory, macOS version, loaded model, trust level and request counts, without names. Anyone can read your Mac’s verification verdict. - The software updates itself. The provider checks for updates every 30 minutes by default, and Darkbloom shipped about a dozen releases in September 2026. - It runs strangers’ requests. Your Mac serves prompts from Darkbloom’s API and OpenRouter customers inside Darkbloom’s provider process. Some providers have raised liability worries; read Darkbloom’s terms if that matters to you. ### Who it suits - A Mac with 64 GB or more, ideally a Max or Ultra chip, that is on, plugged in and idle most of the day anyway. - Cheap electricity, a wired or strong network connection, and macOS 27. - Someone who is fine with a small, variable income and checks on the Mac a few times a week. ### Who it doesn’t suit - Macs with 24–36 GB: new providers need 48 GB, and small Macs rarely win requests. - A MacBook you carry around: sleep, battery and heat all cost earnings. - Buying hardware to earn it back. Demand is well below supply, and prices and rules change often. - Anyone who needs a predictable amount, or doesn’t want a verified, publicly listed, self-updating service on their Mac. ### Sources - Darkbloom pricing model (base rewards): github.com/Layr-Labs/d-inference/blob/master/docs/reference/pricing-model.md - Darkbloom routing architecture: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/routing.md - Darkbloom hardware requirements: github.com/Layr-Labs/d-inference/blob/master/docs/provider/hardware-requirements.md - Darkbloom provider attestation guide: github.com/Layr-Labs/d-inference/blob/master/docs/provider/attestation.md - Calculator code (5% default duty cycle): github.com/Layr-Labs/d-inference/blob/master/console-ui/src/app/earn/calc.ts - Release notes: github.com/Layr-Labs/d-inference/releases - Payout onboarding by country: github.com/Layr-Labs/d-inference/issues/684 - Network figures: Darkbloom’s public /v1/stats endpoint, four reads on September 29, 2026 (16:54–16:59 UTC). - darkbloom.ai/about (60% duty-cycle example), read September 29, 2026. ### How BloomGauge helps The quickest way to know whether it’s worth it for your Mac is to measure it. BloomGauge shows confirmed credits per model and hour, with base rewards kept separate from token earnings, so a few days of data tell you what your Mac really makes. It’s free, with a source-available core on GitHub. ### Questions **Is Darkbloom worth it?** For a Mac with 64 GB or more that is on and idle most of the day anyway, it is a small, real income: base rewards of $18–40 a month by memory (a target from a shared pool, not a guarantee) plus whatever paid requests the Mac wins. For small Macs, laptops you carry around, or buying hardware to earn it back, usually not. **How much can I make with Darkbloom?** It depends on memory, chip speed and uptime. The base reward target runs from $10 a month (24 GB) to $40 (512 GB). Token earnings on top vary widely: in September 2026 about 5–7% of network capacity was in use and most of the work went to Macs with 96 GB or more, so many Macs earn little beyond the base reward. **Is Darkbloom safe to run on my Mac?** Darkbloom’s code is open source. Know the trade-offs: on macOS before 27 it installs Darkbloom’s MDM profile (macOS 27 can use App Attest instead), it updates itself, your Mac’s chip, memory and trust level appear in public stats without your name, and the Mac serves requests from strangers. **Does Darkbloom really pay?** Yes. Credits are paid into your Darkbloom account and withdrawn through Stripe. The amounts are usually far smaller than the calculator suggests. --- ## Darkbloom on a Mac Studio: what Max and Ultra Macs earn URL: https://bloomgauge.io/help/darkbloom-mac-studio-earnings · Updated 2026-10-01 No public source shows what individual Macs earn. Darkbloom’s public leaderboard endpoint returned an empty list on September 29, 2026, and the public network stats contain no money. What the stats do show is how much of the network’s work goes to each kind of Mac. For Mac Studios the picture is clear: they are about a third of connected Macs and do most of the work, and large Ultra Studios do the most. How much that is in dollars for one Mac, nobody outside Darkbloom can say. ### What can and can’t be known - Can: every connected Mac’s chip, memory, memory bandwidth, loaded model, whether it is serving a request right now, and requests and tokens since it last connected (Darkbloom’s public /v1/stats). - Can’t: what any Mac earned. There is no per-Mac money in public data, and the leaderboard endpoint can come back empty (issue #1139). - Can’t: long-run activity per Mac. Counters reset when a provider reconnects, and provider ids change on every restart. - The console leaderboard ranks accounts over the last 24 hours, and many accounts run several Macs, so it doesn’t tell you what one Mac earns either. ### Mac Studios in the public stats Four reads of Darkbloom’s public /v1/stats on September 29, 2026, 16:54–16:59 UTC: about 1,180 connected Macs, 5–7% of network capacity in use. Mac Studios are identified by Apple’s model identifier. “Share of tokens” counts tokens generated since each Mac last connected, so it favors Macs with long sessions. “Serving” means handling at least one request at that moment; 19% of all Macs were. | Mac Studio group | Macs | Share of Macs | Share of tokens | Model loaded | Serving | |---|---|---|---|---|---| | Max, 32–36 GB | 37 | 3.1% | 2.3% | 32% | 7% | | Max, 48–64 GB | 115 | 9.8% | 12.6% | 87% | 19% | | Max, 96–128 GB | 41 | 3.5% | 9.9% | 93% | 27% | | Ultra, 64 GB | 45 | 3.8% | 3.9% | 87% | 9% | | Ultra, 96–128 GB | 57 | 4.8% | 10.1% | 96% | 27% | | Ultra, 192–512 GB | 96 | 8.1% | 21.0% | 97% | 53% | | All other Macs | 789 | 66.8% | 40.2% | 58% | 16% | ### What the numbers say - Mac Studios were a third of connected Macs and had generated about 60% of the tokens. - Ultra Studios with 192–512 GB were 8% of Macs and had generated 21% of the tokens. About half of them were serving at any moment, against 19% of all Macs. - Memory alone doesn’t decide it. 64 GB Ultra Studios (all M1 and M2 Ultra) generated only their share of tokens and were serving less often than the average Mac. - Faster chips win more at the same memory. 64 GB M4 Max Studios had generated about eight times as many tokens per Mac as 64 GB M1 Max Studios. Treat single comparisons with care: sessions differ in length, and many Macs reconnected after late-September verification problems. - Two thirds of 32–36 GB Max Studios had no model loaded, so they earned nothing at that moment, not even the base reward. ### Why bigger and faster Macs win - Routing picks the Mac with the lowest estimated time to answer. A faster Mac with a warm model and an empty queue wins the race. - Generation speed follows memory bandwidth. Darkbloom’s own calculator estimates speed from it. Bandwidth reported in the public stats: M1 and M2 Max 400 GB/s, M4 Max up to 546 GB/s, M1 and M2 Ultra 800 GB/s, M3 Ultra 819 GB/s. - Memory decides what fits and how much room is left. Every model in Darkbloom’s hardware table loads on a 48 GB Mac, and memory beyond the model’s weights goes to the cache for concurrent requests. - One model usually beats several. Models loaded together share memory bandwidth, so a big Studio serving several models answers each one slower and wins fewer requests. ### Base rewards for Studios - Monthly targets by memory: 64 GB $18, 96 GB $22, 128 GB $26, 192 GB $30 (a 256 GB Mac is in this tier), 512 GB $40. A 36 GB Studio is in the $12 tier and a 48 GB Studio in the $16 tier. - The pool is shared. Half is reserved for 48–96 GB Macs, and in each 5-minute period the Macs that earned least from requests are paid first. When the pool runs short, busy large Studios are paid last. - Darkbloom’s hardware doc (updated September 28, 2026) says the M5 Ultra Mac Studio’s identifier is not yet in the base-reward catalog, so it is not eligible for base rewards until Darkbloom confirms it. It can still serve. ### Public money figures, and why they aren’t typical - Darkbloom’s website example: an M4 Max 128 GB MacBook Pro at $204.89 a month. It is a calculator estimate that assumes the Mac produces output 60% of the time, far above the 5–7% of network capacity in use in late September. - The 30-day leaderboard posted on Reddit on August 26, 2026 (accounts, often several Macs): #1 $579.85, #10 $107.50, #50 $53.22. These are the top accounts, not a typical Mac, and demand has changed since. - A public Reddit report from a 96 GB M2 Max found 99.8% of a 100-entry earnings sample was base reward, about $0.73 a day. ### Before you buy a Studio for Darkbloom Don’t count on paying it off. The network has far more capacity than demand, prices and rules change often, and base rewards are a target from a fixed pool. If you already own a Studio that sits idle, run it for a week and look at confirmed earnings per hour before deciding anything. ### Sources - Darkbloom routing architecture: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/routing.md - Darkbloom pricing model (base rewards): github.com/Layr-Labs/d-inference/blob/master/docs/reference/pricing-model.md - Darkbloom hardware requirements (M5 Ultra identifier): github.com/Layr-Labs/d-inference/blob/master/docs/provider/hardware-requirements.md - Calculator code (speed from bandwidth): github.com/Layr-Labs/d-inference/blob/master/console-ui/src/app/earn/calc.ts - Empty leaderboard endpoint: github.com/Layr-Labs/d-inference/issues/1139 - Network figures: Darkbloom’s public /v1/stats endpoint, four reads on September 29, 2026 (16:54–16:59 UTC). - Leaderboard and 96 GB reports: reddit.com/r/MacStudio/comments/1vykzbh and reddit.com/r/DarkbloomProviders/comments/1wrrwou ### How BloomGauge helps BloomGauge shows demand and warm Macs per model across the network, and on your own Studio it shows confirmed earnings per model and hour with base rewards separate. With up to ten Macs in one view, you can compare several Studios side by side. ### Questions **How much does a Mac Studio earn on Darkbloom?** There is no public per-Mac earnings data. Public network stats on September 29, 2026 show Mac Studios were a third of connected Macs and had generated about 60% of the tokens, with 192–512 GB Ultra Studios doing the most. Base rewards add $18–40 a month by memory, as a target from a shared pool. Measure your own Studio’s confirmed earnings for a week. **Does more memory earn more on Darkbloom?** Partly. Memory decides which models fit and sets the base reward tier, but requests go to the Mac expected to answer fastest, which depends on chip speed and memory bandwidth. In public stats, 64 GB M1 and M2 Ultra Studios did no more than their share of work, while 64 GB M4 Max Studios did far more. **Is a Mac Studio worth buying for Darkbloom?** Probably not as an investment. The network had far more capacity than demand in late September 2026 (5–7% in use), and prices and rules change often. It makes more sense for a Studio you already own that would otherwise sit idle. --- ## Does Darkbloom cover its electricity cost? URL: https://bloomgauge.io/help/darkbloom-electricity-cost-mac · Updated 2026-09-29 Short answer: on most Pro and Max Macs the electricity is a small cost next to the base reward. On Ultra Macs that serve for long stretches, at high electricity prices, it can take a real share of what the Mac earns. The figures below come from Apple’s published power data and from provider reports in September 2026. The prices are examples: use your own rate. ### Work out your own cost Cost per day = watts × 24 ÷ 1,000 × your price per kWh. Example: a Mac averaging 200 W uses 200 × 24 ÷ 1,000 = 4.8 kWh a day, which is $1.44 at $0.30 per kWh. Use the Mac’s average draw over a whole day, not its peak. A plug-in power meter gives you that number directly. ### Apple’s published power figures Apple measures power at the wall. “Idle” is only Finder open; “Max” is a compute-intensive test that maximizes processor usage. Max is a ceiling, not what a serving Mac draws all day: most of the day a Darkbloom Mac waits for requests, closer to idle. The cost columns show the worst case, a Mac at Apple’s maximum for 24 hours, at two example prices. | Mac | Idle | Max | kWh a day at max | At $0.15/kWh | At $0.30/kWh | |---|---|---|---|---|---| | Mac mini, M4 Pro | 5 W | 140 W | 3.4 | $0.50 | $1.01 | | Mac mini, M5 Pro | 6 W | 145 W | 3.5 | $0.52 | $1.04 | | Mac Studio, M1 Max | 11 W | 115 W | 2.8 | $0.41 | $0.83 | | Mac Studio, M2 Max | 9 W | 145 W | 3.5 | $0.52 | $1.04 | | Mac Studio, M4 Max | 6 W | 145 W | 3.5 | $0.52 | $1.04 | | Mac Studio, M5 Max | 7 W | 200 W | 4.8 | $0.72 | $1.44 | | Mac Studio, M1 Ultra | 13 W | 215 W | 5.2 | $0.77 | $1.55 | | Mac Studio, M3 Ultra | 9 W | 270 W | 6.5 | $0.97 | $1.94 | | Mac Studio, M2 Ultra | 10 W | 295 W | 7.1 | $1.06 | $2.12 | | Mac Studio, M5 Ultra | 9 W | 385 W | 9.2 | $1.39 | $2.77 | ### What providers have measured - An M5 Max Mac serving Darkbloom used about 1.4 kWh in 24 hours (reported in the Darkbloom Slack). That is an average of about 60 W, roughly $0.22 a day at $0.15 per kWh and $0.43 at $0.30. - An M3 Ultra owner reported about 200 W while serving continuously (Reddit, September 2026). All day, that is 4.8 kWh: $0.72 at $0.15 per kWh, $1.44 at $0.30. - An M3 Ultra 512 GB owner measured about 250 W at most at the wall (Hacker News). All day at that level would be 6 kWh: $0.90 or $1.80. - MacBook Pro: Apple doesn’t publish wall power for it. Its adapter sets a ceiling: 70 W or 96 W for the 14-inch and 140 W for the 16-inch. 96 W all day is about 2.3 kWh, $0.35–0.69 at the example prices. ### Compare it with what the Mac earns - The base reward target is $0.33 a day for a 24 GB Mac, $0.53 for 48 GB, $0.60 for 64 GB, $0.87 for 128 GB and $1.33 for 512 GB. It comes from a shared pool, so it is a target, not a guarantee. - Many Macs earn mostly base reward. The network had far more capacity than demand: about 5–7% of it was in use on September 29, 2026, and most of the work went to Macs with 96 GB or more. A public report from a 96 GB M2 Max found 99.8% of an earnings sample was base reward, about $0.73 a day. - A Mac that mostly waits draws little more than idle, so its cost is well below the table’s worst case. A Mac that serves for hours draws more, but it is also earning token pay in those hours. - The provider keeps the Mac from sleeping while it serves. Compare against what the Mac would use awake and idle, not switched off. ### The honest answer - Pro and Max Macs: the electricity is usually a small share of the base reward alone, at typical prices. - Ultra Macs: at $0.30 per kWh and long serving hours, electricity can use up a large share of the base reward. It pays off only if the Mac wins enough token work on top. - Laptops: power is small, but heat, battery wear and sleep cost more than the electricity. - Don’t rely on anyone else’s numbers, including these. Measure your Mac’s kWh with a plug meter for a few days and compare it with its confirmed earnings per hour over the same days. ### Sources - Mac Studio power consumption and thermal output: support.apple.com/en-us/102027 - Mac mini power consumption and thermal output: support.apple.com/en-us/103253 - MacBook Pro tech specs (power adapters): apple.com/macbook-pro/specs/ - Darkbloom pricing model (base rewards): github.com/Layr-Labs/d-inference/blob/master/docs/reference/pricing-model.md - Darkbloom hardware requirements (sleep prevention): github.com/Layr-Labs/d-inference/blob/master/docs/provider/hardware-requirements.md - Network figures: Darkbloom’s public /v1/stats endpoint, September 29, 2026. - Provider reports in the Darkbloom Slack, on Reddit and on Hacker News, September 2026, described without names. 96 GB report: reddit.com/r/DarkbloomProviders/comments/1wrrwou ### How BloomGauge helps BloomGauge shows your Mac’s confirmed earnings per model and hour, with base rewards separate from token earnings. Put a day of those next to a day of plug-meter readings and you know whether Darkbloom covers its electricity on your Mac. ### Questions **How much electricity does a Mac use running Darkbloom?** It depends on the Mac and how much it serves. Apple publishes idle and maximum power for Mac Studio and Mac mini: for recent Pro, Max and Ultra models that is 5–13 W idle and 115–385 W at maximum. Providers have reported about 1.4 kWh a day on an M5 Max Mac and about 200 W while serving continuously on an M3 Ultra. **Does Darkbloom pay more than the electricity costs?** On most Pro and Max Macs, yes: electricity is usually well under the base reward of $0.53–0.87 a day for 48–128 GB Macs. On Ultra Macs at high electricity prices, power can use up much of the base reward, so it depends on how much token work the Mac wins. Measure your own kWh and earnings. **How do I calculate the electricity cost of Darkbloom?** Multiply the Mac’s average watts by 24, divide by 1,000 and multiply by your price per kWh. For example, 200 W is 4.8 kWh a day, $1.44 at $0.30 per kWh. A plug-in power meter gives you the real average. --- ## Is Darkbloom safe? What access it gets to your Mac URL: https://bloomgauge.io/help/is-darkbloom-safe-mac · Updated 2026-09-29 Whether Darkbloom is safe enough is your call. This page sets out what it installs, what it can do and what it tells others about your Mac, so you can decide. Everything below comes from Darkbloom’s own open-source docs (links at the end), as of late September 2026. It describes what the docs say, not an independent audit. ### What gets installed and what runs - The installer runs without sudo. It puts the darkbloom app and CLI in ~/.darkbloom, adds one PATH line to your shell file and tries to link /usr/local/bin/darkbloom. - Two LaunchAgents run in your user account: the provider and a crash-recovery watchdog. - The model runs inside the darkbloom process itself, with no Python interpreter or separate inference process. Darkbloom says Hardened Runtime and debugger restrictions protect that process, and the provider refuses to start with a debugger attached. - The provider only connects out, to api.darkbloom.dev on port 443. It needs no inbound port. - It keeps the Mac from sleeping while it serves. - It updates itself by default: it checks at start, again after 5 minutes and then every 30 minutes, verifies each download’s checksum and code signature, and restarts after finishing accepted requests. darkbloom autoupdate disable turns this off. - Fan control is optional and off by default. If you turn it on, it installs a root helper that can only set fan speeds and receives no prompts, keys or network access. ### What your Mac sees of other people’s requests - Requests reach your Mac encrypted. Your Mac is where they are decrypted: the prompt and the answer exist in plain text inside the provider process while it runs the model. - Darkbloom’s docs say prompts are decrypted only inside that process and never logged. Provider logs hold request ids, model ids and token counts. - Your Mac never sees the customer’s API key, identity or balance. - Darkbloom’s docs are open about limits: the process protections don’t guarantee that every prompt or answer is wiped from memory after inference, and Darkbloom’s coordinator also reads each request in memory to route and bill it. - Provider logs are not uploaded automatically. darkbloom report sends a log excerpt only when you run it, and --dry-run shows it first. ### What Darkbloom keeps about your Mac Darkbloom’s coordinator stores your Mac’s Secure Enclave public key, chip and model, and on the MDM path also its serial number, UDID, push token and Apple device-attestation certificate chain. It receives regular heartbeats with operational data such as status, memory and thermal state, in a fixed format rather than free text, so they can’t carry prompts. ### The MDM profile (macOS before 27) - On macOS before 27, Darkbloom verifies your Mac through its own MDM profile. MDM lets Darkbloom ask Apple’s management system, not its own software, whether System Integrity Protection and Secure Boot are on. - The profile requests three read-only rights: inspect installed profiles, query device information and run security queries. - It does not request the rights to install or remove profiles, lock the Mac or change its passcode, erase it, list installed apps, apply restrictions, change settings or manage apps. - Darkbloom’s coordinator sends only two MDM commands: SecurityInfo (SIP and Secure Boot state) and DeviceInformation (for Apple’s device attestation). Its code refuses to send any other command. - The coordinator has no right to remove the profile. You can remove it yourself at any time in System Settings → General → Device Management, though the Mac then loses verification. On macOS 27, wait until App Attest is confirmed first. - A Mac already managed by another MDM, such as an employer’s, can’t use this path. ### App Attest on macOS 27 - Since Darkbloom 0.9.7, Macs on macOS 27 or later can be verified with Apple’s App Attest instead, with no Darkbloom MDM profile. New setups on macOS 27 skip the profile. - Darkbloom says its MDM will be switched off soon and recommends upgrading to macOS 27. - Already enrolled? Upgrading macOS doesn’t remove the profile. Keep it until Darkbloom reports removal is ready, then run darkbloom unenroll and choose the App Attest option. The command guides you to remove the profile in System Settings; it doesn’t remove anything itself. - Company-managed Macs keep their employer profile on this path. ### What it requires of your Mac - System Integrity Protection on and Secure Boot at Full Security. A Mac that reports either one off is marked untrusted at once. - A user logged in at the Mac’s screen, automatic login on, auto-logout off and sleep prevented, so the Mac can be verified again after a reboot. - A released provider build. If the provider binary or model files change from what the Mac registered, it is marked untrusted; darkbloom update returns it to a released build. - Darkbloom treats a single Mac as its security boundary. Linking Macs over Thunderbolt (RDMA) bypasses the process protections and is not trusted. ### What anyone can see - Darkbloom’s public attestation endpoint shows each Mac’s verification verdict: trust level, MDM and device-attestation flags and the verified security settings. It never shows the serial number, UDID or push token. - Darkbloom’s public stats list every connected Mac’s chip, memory, macOS version, loaded model and request counts, without names. ### How to remove it 1. If you turned on fan control: sudo darkbloom fan uninstall. 2. darkbloom stop --uninstall finishes accepted requests, stops the provider and removes both LaunchAgents. 3. darkbloom unenroll, choosing full exit, guides you to remove the MDM profile (if you have one) and offers to delete the local config, login token and Secure Enclave key. Your account history on Darkbloom’s side stays. 4. Delete downloaded models with darkbloom models remove while the CLI is still installed. They live in ~/.cache/huggingface/hub. 5. Then delete ~/.darkbloom and ~/.config/darkbloom, remove /usr/local/bin/darkbloom (needs sudo) and delete the # Darkbloom PATH line from your shell file. ### What the docs don’t cover Darkbloom’s technical docs don’t cover legal questions, such as responsibility for what strangers ask your Mac to generate. Read Darkbloom’s terms if that matters to you. ### Sources - Encryption and privacy model: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/security/encryption.md - Privacy expectations: github.com/Layr-Labs/d-inference/blob/master/docs/consumer/privacy-expectations.md - MDM enrollment (profile rights): github.com/Layr-Labs/d-inference/blob/master/docs/architecture/security/enrollment.md - Provider attestation guide: github.com/Layr-Labs/d-inference/blob/master/docs/provider/attestation.md - Attestation architecture: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/security/attestation.md - Provider process: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/components/provider.md - Install, update and uninstall: github.com/Layr-Labs/d-inference/blob/master/docs/provider/installation.md - CLI reference (unenroll, stop, auto-update timing): github.com/Layr-Labs/d-inference/blob/master/docs/provider/cli-reference.md - Hardware requirements (network, sleep): github.com/Layr-Labs/d-inference/blob/master/docs/provider/hardware-requirements.md - Release notes (0.9.7 App Attest without MDM): github.com/Layr-Labs/d-inference/releases ### How BloomGauge helps BloomGauge is an independent app, not affiliated with Darkbloom, and it runs locally. It reads the provider’s state file and your confirmed earnings using the provider’s existing login, makes model changes only through Darkbloom’s own CLI and keeps its history on your Mac. It never touches payouts, withdrawals, fans or power settings, and never uploads your credentials. ### Questions **Is Darkbloom safe to run on my Mac?** That is your call. Per Darkbloom’s docs, the provider installs in your user account without sudo, connects out only, updates itself, keeps the Mac awake and runs strangers’ requests inside its own protected process. On macOS before 27 it uses a read-only MDM profile; on macOS 27 it can use App Attest instead. **What can the Darkbloom MDM profile do?** It requests only read-only rights: inspect installed profiles, query device information and run security queries. Darkbloom’s coordinator sends only SecurityInfo and DeviceInformation commands, to confirm SIP and Secure Boot. It cannot erase or lock the Mac, install apps or profiles, or change settings, and you can remove it in System Settings. **Can Darkbloom providers read my prompts?** The Mac that serves a request decrypts it inside Darkbloom’s provider process, which is where the model runs. Darkbloom says prompts are never logged and the process is protected by Hardened Runtime and debugger restrictions, but its docs also say the provider sees the prompt and completion in plain text and doesn’t guarantee memory is wiped afterwards. **How do I uninstall Darkbloom?** Run darkbloom stop --uninstall, then darkbloom unenroll and choose full exit, remove downloaded models with darkbloom models remove, and delete ~/.darkbloom, ~/.config/darkbloom and /usr/local/bin/darkbloom. Remove the MDM profile in System Settings if you have one. --- ## Can you run several Darkbloom models at once? URL: https://bloomgauge.io/help/darkbloom-multiple-models · Updated 2026-10-01 Yes: by default the Darkbloom provider can keep up to three models loaded at once. Whether it should is another question. For most Macs one well-chosen model earns more than several. Facts below come from Darkbloom’s open-source docs and issues (links at the end); memory figures are worked out from Darkbloom’s own load formula. ### How it works - Advertised models: the provider offers the models in enabled_models in its config, or every model it can serve if that list is empty. darkbloom start --model lets you pick, and the flag can be repeated. - Loaded models: up to max_model_slots at once (default 3). Only a loaded, warm model gets requests. The base reward needs one model loaded, and which one doesn’t matter. - Preloading: on every start the provider loads preload_models if set, otherwise the selected models, within the slot limit and free memory. Models that don’t fit load later on demand. - Idle unloading: with the shipped setting, a model unloads after 60 minutes without requests (idle_timeout_mins; 0 keeps it loaded). - Darkbloom can also move models itself: its warm-pool controller asks idle Macs to load models they advertise and already have on disk. - darkbloom switch (0.9.10 and later) replaces the whole selection on a running provider, without a restart. ### What a second model costs in memory Each loaded model adds its full weights (with a 20% loading allowance). A working reserve for activations is charged once, not per model, plus at least 1 GiB for concurrent requests. By default the provider also holds back 4 GB and uses at most 90% of memory, and macOS and your apps need their share. Free memory needed to load each set, from Darkbloom’s formula: | Models loaded together | Free memory needed | Smallest Mac to try | |---|---|---| | gpt-oss-20b alone | 18.0 GiB | 24 GB (tight) | | Gemma 4 26B QAT alone | 23.9 GiB | 32 GB | | Qwen3.6 35B A3B alone | 30.3 GiB | 36 GB | | gpt-oss-20b + Gemma 4 26B QAT | about 37.5 GiB | 64 GB (48 GB too tight) | | gpt-oss-20b + Qwen3.6 35B | about 43.8 GiB | 64 GB | | Gemma 4 26B QAT + Qwen3.6 35B | about 47.7 GiB | 64 GB (tight) | | Qwen3.5 35B + Qwen3.6 35B | about 53.7 GiB | 96 GB | | gpt-oss-20b + Gemma 4 26B QAT + Qwen3.6 35B | about 61.3 GiB | 96 GB | ### Why one model usually earns more - Gemma alongside other models: Darkbloom’s code can reserve Gemma 4 for Macs that advertise nothing else, but Darkbloom staff said in August 2026 that this is turned off on the live network, and providers serving several models report getting Gemma requests. One model is still usually faster, because loaded models share memory bandwidth. In Darkbloom’s public stats (polled every 10 minutes, Sep 24–Oct 1, 2026), Macs offering Gemma plus other models got only about 0.3× the Gemma requests per hour of Gemma-only Macs, mostly because they spent half their time serving the other model, and earned about half as much per hour overall. - Less room for concurrent requests. The cache for requests in flight comes out of whatever memory the weights leave, so a second model means fewer requests at once for the first. - Models serving at the same time share the Mac’s memory bandwidth. Darkbloom staff advised providers in the Darkbloom Slack in late September 2026 not to load several models, because two models serving at once perform worse. - Load churn. In GitHub issue #789, a 128 GB Mac advertising five models on three slots went through 692 load and unload cycles in 49 hours. Rarely used models kept pushing out the busy ones, which then had to reload. - Cold models lose the race. Routing charges a cold or just-loaded model a large time penalty, so a model that keeps getting unloaded and reloaded wins few requests. ### Practical combinations - 24–36 GB: one model. Nothing else fits next to it. - 48 GB: one model. Gemma 4 26B QAT alone is the usual steady earner; a single Qwen 35B is the alternative. - 64 GB: one model is still the simple choice. If you want two, pair models that don’t include Gemma, such as gpt-oss-20b with a Qwen 35B, and check memory pressure stays low. - 96 GB and up: two or three models fit, but shared memory bandwidth still applies, and Macs running several models got about a third of the Gemma work per hour. Many large Macs do better running one model and switching only on strong evidence. - Keep other models downloaded, not loaded. With darkbloom switch, changing models takes a drain and a load, not a restart. - After any change, run darkbloom status and confirm the model you expect is loaded and serving. ### Sources - Darkbloom hardware requirements (free memory at load, several resident models): github.com/Layr-Labs/d-inference/blob/master/docs/provider/hardware-requirements.md - Memory model and load formula: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/hardware-support.md - CLI reference (start, switch, max_model_slots, preload_models, idle_timeout_mins): github.com/Layr-Labs/d-inference/blob/master/docs/provider/cli-reference.md - Routing and dedicated models: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/routing.md - Five models on three slots: github.com/Layr-Labs/d-inference/issues/789 - Staff advice on one model: Darkbloom Slack, September 27–28, 2026. ### How BloomGauge helps BloomGauge’s Manager runs one model at a time. With Manager on, it holds the model that has paid best on your Mac over the last 30 days (or, on a new Mac, what pays best on Macs with the same chip and memory), and moves only when at least five Macs like yours have clearly earned more on another model for two hours. Switches go through Darkbloom’s own CLI and must pass memory, idle and temperature checks. BloomGauge picks the best-paying model for your Mac; you can turn the Manager off any time. ### Questions **Can Darkbloom run more than one model at a time?** Yes. The provider keeps up to max_model_slots models loaded (default 3), memory permitting. Each extra model adds its full weights to memory and shares memory bandwidth, so one model is usually the better choice. **How much memory do two Darkbloom models need?** Worked out from Darkbloom’s load formula: about 37.5 GiB free for gpt-oss-20b plus Gemma 4 26B QAT, about 44 GiB for gpt-oss-20b plus a Qwen 35B, and about 48 GiB for Gemma plus a Qwen 35B. In practice that means a 64 GB Mac or larger. **Should I advertise several models on Darkbloom?** Usually not. A second model takes memory from concurrent requests, and advertising more models than slots can cause constant loading and unloading. Pick one model, keep others downloaded and switch when demand moves. --- ## Darkbloom earnings calculator vs. what Macs actually earn URL: https://bloomgauge.io/help/darkbloom-calculator-vs-real-earnings · Updated 2026-09-29 Darkbloom’s calculator answers “what if my Mac were busy this much of the time?”, not “what will my Mac earn?”. Most of the gap between the two comes from how busy Macs really are. Details below come from the calculator’s open-source code and Darkbloom’s public stats. ### How the calculator works - It estimates your Mac’s generation speed from its memory bandwidth: 65% of bandwidth, divided by the model’s active weights per token. - It multiplies that by the duty cycle, the share of the month it assumes your Mac spends producing output, and by the model’s output price. - It counts output tokens only and leaves out base rewards; the code says so. - The console calculator’s default duty cycle is 5%. The example on darkbloom.ai assumes 60% and shows $204.89 a month for an M4 Max 128 GB MacBook Pro running Qwen3.6 35B. ### Why real earnings differ - Utilization. On September 29, 2026, 5–7% of the network’s capacity was in use, with nothing queued. An average duty cycle near 5% is realistic; 60% is not. - Routing. Requests go to the Mac expected to answer fastest, so the work is uneven. Large, fast Macs get much more than the average and small Macs often get none. - Demand per model. The calculator ranks models by price, but a well-paid model can have little demand. On September 29, gpt-oss-20b had about 225 requests in flight across 323 warm Macs, while Nemotron 3.5 Lightning had 2 across 70. - Input tokens. Real requests are mostly input: in the last 24 hours, 10.6 billion prompt tokens against 1.4 billion output tokens. Input pays much less per token but isn’t in the estimate, and processing long prompts takes time the estimate doesn’t count. - Base rewards. They aren’t in the estimate, and they come from a fixed $9,000-a-month pool, so the tier amounts are targets, not a guarantee. - Uptime. Sleep, restarts, drains, pending verification and routing stalls all cut hours the calculator assumes you are serving. ### What providers report - One provider in the Darkbloom Slack reported $210 a month against a calculator projection of $341, about 61%, and that was a good result. - A public Reddit report from a 96 GB Mac found 99.8% of a 100-entry earnings sample was base reward. - A Reddit analysis in August 2026 found the calculator’s default had been cut from 80% to 5%. A pull request to base the calculator on real market demand (#697) was still open on September 29. ### Measure your own real earnings per hour 1. Keep the same model loaded for at least a few days, including nights and a weekend if you can. 2. Take confirmed credits from your Darkbloom account’s earnings for that period. Separate base_reward rows from token earnings, and don’t use the job count: it includes base-reward rows. 3. Divide by the hours in the period, including hours the Mac was offline. That is your real rate. 4. Compare it with the base reward alone. For a 64 GB Mac that is $18 a month, about $0.025 an hour. Anything above that is what paid requests add. 5. Repeat for another model before switching for good. Demand moves through the day and the week. 6. Save your history as you go. Darkbloom’s earnings API returns only recent entries, so older detail drops off. ### Using the calculator sensibly Leave the duty cycle at 5% or below for most Macs, add the base reward for your memory tier, and treat the result as a ceiling rather than a forecast. Then replace it with your own measured numbers. ### Sources - Calculator code: github.com/Layr-Labs/d-inference/blob/master/console-ui/src/app/earn/calc.ts - Calculator fix pull request: github.com/Layr-Labs/d-inference/pull/697 - Darkbloom pricing model (base rewards): github.com/Layr-Labs/d-inference/blob/master/docs/reference/pricing-model.md - Darkbloom routing architecture: github.com/Layr-Labs/d-inference/blob/master/docs/architecture/routing.md - Job count includes base rewards: github.com/Layr-Labs/d-inference/issues/1244 - Network and model figures: Darkbloom’s public /v1/stats and /v1/models/capacity endpoints, September 29, 2026. - darkbloom.ai/about (60% example) and reddit.com/r/MacStudio/comments/1vykzbh (August 2026 calculator analysis). ### How BloomGauge helps BloomGauge does this measurement for you: it keeps a local history of confirmed credits per model and hour, shows base rewards separately from token earnings, and its Pulse meter compares the live pay rate with your Mac’s usual rate for the model it serves. ### Questions **Is the Darkbloom earnings calculator accurate?** It is accurate about speed and prices but assumes how busy your Mac will be. Its website example assumes 60% of the time producing output, while about 5–7% of network capacity was in use in late September 2026, and most of it went to the fastest Macs. Treat it as a ceiling. **What duty cycle does the Darkbloom calculator use?** The console calculator defaults to 5%, and you can change it. The example on darkbloom.ai uses 60%. Duty cycle is the share of the month the calculator assumes your Mac spends producing output tokens. **How do I work out my real Darkbloom earnings per hour?** Take confirmed credits for a period of a few days, split base rewards from token earnings, and divide by all the hours in the period, including offline hours. Compare models the same way before settling on one. --- ## BloomGauge vs. Darkbloom Monitor URL: https://bloomgauge.io/help/bloomgauge-vs-darkbloom-monitor · Updated 2026-10-01 We make BloomGauge, so weigh this accordingly. Darkbloom Monitor is a native menu bar app by justin-schroeder on GitHub. Everything we say about it comes from its README as of September 29, 2026. Both are community projects; BloomGauge is independent and not affiliated with Darkbloom. ### At a glance | | BloomGauge | Darkbloom Monitor | |---|---|---| | Runs as | Mac app with a local dashboard (macOS 14+, Apple Silicon) | Native Swift menu bar app (macOS 14+) | | Earnings | Confirmed credits per model and hour, base rewards separate, live Pulse meter against your usual rate | Balance, lifetime and hourly earnings split by base reward and model, end-of-hour projection, job counts | | History | Local history database | Local seven-day hourly ledger | | Network demand | Demand, capacity and pricing per model | Not in its README | | Hardware | CPU, GPU, memory and temperature | Memory, fan speed, CPU and GPU temperatures | | Provider controls | Start or switch models, from the Mac or a phone | Start, stop and restart | | Model management | Manager picks the best-paying model for your Mac and keeps it loaded; you can turn it off any time | None | | Recovery | Restores a model after a failed load, restarts a drained provider | Not in its README | | Several Macs | Up to ten Macs in one view | My Macs list with each Mac’s model when more than one is online | | Phone | In a browser over your own Tailscale | Not in its README | | License | Free; core is MIT on GitHub | No license listed on GitHub | | Latest release | Signed, notarized builds from bloomgauge.io | v1.5.1, August 22, 2026 (GitHub releases) | ### What they have in common - Both read the provider’s own state file and your earnings through the Darkbloom CLI’s existing login. Neither needs a separate account. - Both split earnings into base rewards and model earnings, which is the quickest way to spot a Mac that is online but getting no paid work. - Both are free downloads. ### Choose Darkbloom Monitor if… - You want a status light in the menu bar and not much else. Its README sums it up: green when earning, orange while connecting, red when stopped. - You want the lightest possible app. Its README reports 0.0% CPU, and it is plain Swift with no dependencies, which makes it easy to read through. - You choose your model yourself and don’t want any app that can change it. ### Choose BloomGauge if… - You want to know which model actually pays on your Mac: confirmed earnings per model and hour, kept over time. - You want the model handled for you, with switches only on strong evidence: minimum run times, daily switch limits, and memory, power, temperature and idle checks. You can turn the Manager off any time. - You want recovery when a load fails or the provider is left drained, network demand per model, or phone access through your own Tailscale. ### Worth knowing - Darkbloom Monitor’s latest release is v1.5.1 from August 22, 2026. Darkbloom has shipped many provider releases since, including drain-before-restart in 0.9.9 and live model switching in 0.9.10. - BloomGauge runs a local dashboard with a bundled Python backend, so it is a bigger app than a menu bar monitor. ### Can you run both? Yes. Monitoring side by side is fine. Run only one tool that switches models. Darkbloom Monitor doesn’t switch models, but if BloomGauge’s Manager is on, start and switch the provider from BloomGauge, so the two apps don’t restart it with different models. ### Sources - Darkbloom Monitor README and releases: github.com/justin-schroeder/darkbloom-monitor - BloomGauge README: github.com/cookder/bloomgauge ### How BloomGauge helps BloomGauge is free, with a source-available core on GitHub (PolyForm Shield). BloomGauge picks the best-paying model for your Mac; you can turn the Manager off any time, for example to run it next to another tool that switches models. ### Questions **What is the difference between BloomGauge and Darkbloom Monitor?** Darkbloom Monitor is a lightweight menu bar monitor: a status light, balance and hourly earnings, hardware readings and start/stop/restart. BloomGauge also tracks confirmed earnings per model over time, shows network demand, recovers from failed loads and drained providers, and can manage the model for you. **Can I run BloomGauge and Darkbloom Monitor together?** Yes. Monitoring apps can run side by side. Only run one tool that switches models, and if BloomGauge’s Manager is on, start and switch the provider from BloomGauge. **Is Darkbloom Monitor free?** Yes, it’s a free download from its GitHub releases page. GitHub lists no license for the repository as of September 29, 2026. --- ## BloomGauge vs. darkbloom-manager URL: https://bloomgauge.io/help/bloomgauge-vs-darkbloom-manager · Updated 2026-10-01 We make BloomGauge, so weigh this accordingly. darkbloom-manager is a Python command-line tool by benbuschmann on GitHub that keeps one model warm and switches when public network data favors another. Everything we say about it comes from its README as of September 29, 2026. BloomGauge is independent and not affiliated with Darkbloom. ### At a glance | | BloomGauge | darkbloom-manager | |---|---|---| | Runs as | Mac app with a local dashboard (macOS 14+, Apple Silicon) | Python script in Terminal (Python 3.10–3.14, standard library only) | | Decides by | What Macs with your chip and memory confirmed earning per model, and your own Mac’s history | Public pressure (requests in flight per warm Mac) × blended list price × a per-model weight | | Switch rule | At least five similar Macs clearly earned more for two hours; minimum run time, at most 3 moves a day by default, memory, power, temperature and idle checks | At least 25% better after switch cost, 3 passing checks a minute apart, 45 minutes minimum warm time, provider idle | | Default | Manager on (set during setup; you can turn it off) | Prints decisions until you add --apply | | How it switches | Through Darkbloom’s CLI, waiting out the drain | darkbloom start with one model (restarts the provider) and sets the preload list | | Recovery | Restores the model after a failed load, restarts a drained provider | Optional: after 3 checks where the Mac answers locally but production says model_not_loaded, stops for 15 minutes and starts the best model | | File cache purge | Before each switch, with one-time permission | Optional, with a sudoers line you add | | Earnings tracking | Confirmed credits per model and hour, base rewards separate | Not a goal: its README says the score does not measure payouts | | Network view | Demand, capacity and pricing in the app | Public scoring graphs site | | Phone and several Macs | Phone in a browser over your own Tailscale; up to ten Macs in one view | One copy of the script per Mac | | License | Free; core is MIT on GitHub | MIT | | Latest release | Signed, notarized builds from bloomgauge.io | v0.1.17, September 28, 2026 | ### The main difference: list prices or confirmed pay darkbloom-manager scores each model from public data: how many requests are in flight per warm Mac, times a blended price (85% input, 15% output), times a weight you can change. It is simple, transparent and needs no account data. Its README is clear that the score doesn’t measure your Mac’s speed, real token mix or payouts. BloomGauge instead decides from confirmed earnings, both on Macs with your chip and memory and on your own Mac. That tracks what routing actually sends a Mac like yours, but it needs history and holds still until the evidence is strong. ### Choose darkbloom-manager if… - You are comfortable in Terminal and want a single script you can read, test and run under your own supervisor. - You want every threshold under your control: check interval, averaging window, improvement percentage, switch cost, minimum warm time and per-model weights. - You want its routing recovery, which takes a Mac offline for 15 minutes when production keeps saying the model isn’t loaded. - You run Macs headless or want no app at all. ### Choose BloomGauge if… - You want decisions based on what similar Macs were actually paid, not on list price and request pressure. - You want earnings tracking in the same place: confirmed credits per model and hour, base rewards separate, and a live Pulse meter against your usual rate. - You want a dashboard, phone access through your own Tailscale, and up to ten Macs in one view. - You want recovery from failed loads and drained providers without extra setup. ### Run only one tool that switches models Two managers will undo each other’s switches, and every switch usually costs a 5-minute base-reward period. If you want to try darkbloom-manager, turn BloomGauge’s Manager off (untick it during setup, or turn it off any time in Optimizer) and use BloomGauge only to track what each model earns. That is also a fair way to compare the two. ### Sources - darkbloom-manager README and releases: github.com/benbuschmann/darkbloom-manager - BloomGauge README: github.com/cookder/bloomgauge ### How BloomGauge helps BloomGauge is free, with a source-available core on GitHub (PolyForm Shield). BloomGauge picks the best-paying model for your Mac; you can turn the Manager off any time. It shows why no switch qualifies yet, so you can follow its reasoning. ### Questions **What is darkbloom-manager?** A free, MIT-licensed Python command-line tool that keeps one Darkbloom model warm and switches when public request pressure times price favors another model by at least 25% for three checks in a row, after a minimum warm time of 45 minutes. It can also send hourly test requests and recover from routing stalls. **Should I use BloomGauge or darkbloom-manager?** darkbloom-manager suits people who want a transparent, configurable script in Terminal. BloomGauge suits people who want a Mac app that decides from confirmed earnings, tracks earnings per model and hour, and works from a phone. Use one of them to switch models, not both. **Can I use darkbloom-manager with BloomGauge?** Yes, if you turn BloomGauge’s Manager off. BloomGauge then only tracks earnings and network demand, and darkbloom-manager is the only tool switching models. --- ## BloomGauge Guardian: keeps your Mac earning URL: https://bloomgauge.io/help/bloomgauge-guardian · Updated 2026-10-01 Short answer: Guardian is the part of BloomGauge that keeps a Darkbloom Mac earning, whoever picks the model. When Darkbloom stops serving your model, it loads it again or restarts Darkbloom, within set limits, and it tells you why a Mac isn’t earning when the fix is yours. It is free and comes with BloomGauge 1.36.64. We make BloomGauge, so weigh this accordingly. ### Why it matters - Darkbloom pays the base reward only while a model is loaded. By default Darkbloom unloads the model after an idle hour. - About 30% of online Darkbloom Macs have no model loaded (public stats, Sep 27–29, 2026). - A Mac can also look online while it gets no paid work: a restart that got stuck, a failed relaunch, or a session Darkbloom doesn’t route to. ### Keep this Mac earning On by default, in Optimizer → Overview. When Darkbloom stops serving the model you chose, BloomGauge loads it again or restarts Darkbloom: after an idle unload (unless you set your own idle time in Darkbloom), a restart that got stuck, a relaunch that failed, or a session that gets no paid work. If you pick the model yourself, your choice doesn’t change. With the Manager on, the Manager does this job. ### Keep my model loaded A switch in Optimizer → Overview. Turned on, Darkbloom keeps the model in memory instead of unloading it after an idle hour, so the base reward doesn’t pause. On by default on new installs from BloomGauge 1.36.64; Macs that already had BloomGauge keep their setting. BloomGauge applies it with one restart, the next time the model sits unloaded, and suggests it when your Mac keeps getting unloaded. ### Why not earning? More → Why not earning? checks each thing Darkbloom needs before it pays, in the order Darkbloom checks them: Powered and awake, Connected to Darkbloom, Taking new work, Verified, Model loaded, Measured recently, Winning requests, Jobs paid. It names the first one that isn’t OK, shows what BloomGauge measured and did, and, when the fix is yours, offers one step. When no model is loaded, it says why (too big, other apps holding memory, file cache, an idle unload) and can suggest a downloaded model that fits this Mac, which you switch to after a confirmation. A Reliability card on Overview shows how much of the last 24 hours and 7 days this Mac was ready to earn and what caused the rest. ### After updates, and on battery - When Darkbloom or macOS updates itself, BloomGauge checks that the Mac comes back verified, serving and paid within 30 awake minutes (an hour after a macOS update). If it doesn’t, you get one Problems alert that says which step failed. - It warns when Darkbloom is older than the network accepts, and once before an automatic macOS update restarts a Mac that has FileVault on (after that restart the Mac waits for your login and earns nothing until then). - Power alerts: when an earning Mac has been on battery for 2 minutes, and again at 30% and 15%. It also tells you when the charger can’t keep up with the load. ### Offline notice (opt-in) Tell me if this Mac goes offline, in Optimizer → Overview → Notifications, turned on from the Mac. It needs a phone that already gets BloomGauge notifications. BloomGauge checks in with the website every 5 minutes; if the check-ins stop for 15 minutes (you can choose 10–60) while the Mac should be running, your phone gets one ordinary notification. Shut Down, Log Out, quitting BloomGauge and a pause or stop you made don’t count. Each check-in carries a random ID, the app version, one status word and when to expect the next one, never earnings, account details, model names or hardware details. Turning it off deletes the website’s copy. Details are on the privacy page. ### When it acts, and its limits - It restarts Darkbloom on its own at most 3 times an hour and 6 times a day, and waits longer after each try. A Mac that is down may get one more repair in an hour. - If restarts don’t bring paid work back, it stops and tells you. - It waits while Darkbloom’s network shows a wide problem, while Darkbloom finishes accepted work, for the first minutes while Darkbloom verifies a new session, and while Darkbloom updates itself. - Planned model switches start just after Darkbloom’s 5-minute base-reward check, so a switch costs less. ### What it never does - It never changes your model choice when you pick the model yourself (Manager off). It only reloads or restarts the model you picked. - It never restarts Darkbloom after a stop you made (Darkbloom’s Pause, darkbloom stop, or Stop in BloomGauge), and it leaves Darkbloom’s availability schedule and Darkbloom Autopilot alone. - Why not earning? never changes a setting by itself. A model switch it suggests happens only after you confirm. - It doesn’t promise higher earnings. It keeps the Mac ready to earn; what it earns still depends on demand, hardware and uptime. - Turn off Keep this Mac earning in Optimizer → Overview to go back to the old Manual behavior. ### How BloomGauge helps Guardian is built into BloomGauge 1.36.64 and later, free, with no account. It works in every mode, whether you pick the model yourself or let the Manager pick the best-paying one. ### Questions **What is BloomGauge Guardian?** The part of BloomGauge that keeps a Darkbloom Mac earning: it reloads your model after an idle unload, restarts a stuck provider within set limits, checks the Mac after updates, alerts you on battery, and explains why a Mac isn’t earning. **Does Guardian change my model?** Not if you pick the model yourself. It only reloads or restarts the model you chose. With the Manager on, the Manager picks the model and does the recovery. **How often does Guardian restart Darkbloom?** At most 3 times an hour and 6 times a day, waiting longer after each try. It waits out Darkbloom-wide problems, accepted work and Darkbloom’s own updates, and stops and tells you if restarts don’t help. **Why does a loaded model matter?** Darkbloom pays the base reward only while a model is loaded. About 30% of online Darkbloom Macs have no model loaded (public stats, Sep 27–29, 2026). **Is Guardian free?** Yes. It is part of BloomGauge, which is free with no account. ## BloomGauge - [Guide](https://bloomgauge.io/guide): install, optimizer settings, troubleshooting - [Changelog](https://bloomgauge.io/changelog): every release - [Privacy](https://bloomgauge.io/privacy): what stays on the Mac and what is optional. New installs agree on the setup screen to anonymous setup counts and, from beta 50, anonymous usage data (no IDs, earnings or Mac details; off any time in Help & feedback). Usage sharing, problem reports, pay summaries and contact details are off until turned on. - [Help & feedback](https://bloomgauge.io/support)