Comparison
JupiterFetch vs Firecrawl
Firecrawl is a platform for reading the whole web, and its branding format is one of the things its scrape endpoint returns. We do one thing: the brand, with every image hosted and ready to use, for $0.01 per successful call. If you need the web, use Firecrawl.
Updated September 28, 2026
A web platform and a brand API
Firecrawl reads the web for you. It searches, scrapes and crawls sites, turns pages into markdown for language models, and runs research agents. Branding is one format on its scrape endpoint, POST /v2/scrape, asked for beside markdown, HTML or a screenshot.
We do only the brand. One endpoint, GET /v1/brands/{domain}, returns one company’s brand: its logos, colors with roles, typefaces, social links and share image, read from the live site or from our cache of it. A cached copy is at most a week old, except when a fresh read fails or runs out of time: then we may return an older copy, up to 7 days past that week, marked stale in the Cache-Status header. That is all we do. We built it for products that need a brand to show, such as an onboarding step that puts a new customer’s logo and colors on screen.
What comes back
Both of us return colors with roles such as primary, background and link, the typefaces the site uses, and whether it is a light or dark design. The differences are in the logos, the images and the design detail.
Logos. The branding response in Firecrawl’s scrape docs has one logo URL, plus a favicon and a share image. We return several logos when the site has them: the main mark, a wordmark, a symbol, icons and a favicon, each labeled with its kind and with the background it is designed for: light, dark or either. logos[0] is the primary.
Images. In Firecrawl’s documented example, the logo, favicon and share image are URLs on the site itself, so fetching and storing them is up to you. We download every image while we read the site, check that it really is the image it claims to be, and host it on our CDN as a PNG, JPEG, WebP or GIF, with a cleaned-up SVG beside it when the site had one. Each URL works for at least 30 days after we return it, so it can go straight into an <img> tag. Download it if you want it for longer.
Design detail. Firecrawl goes further here. Its branding format also returns the type scale (sizes, weights and line heights), spacing, button and input styles, icon style, animation, layout, and brand personality traits such as tone. We return none of that. If you are rebuilding a site’s look rather than showing its logo, that detail matters, and Firecrawl has it.
Side by side
| Feature | JupiterFetch | Firecrawl |
|---|---|---|
| Logos per brand | Several Each with its kind, its theme (light, dark or either) and an SVG when the site has one | One Plus a favicon and a share image |
| Images hosted for you | Yes Checked, and on our CDN for at least 30 days | The site’s own URLs In the documented example response |
| Colors with roles | Yes | Yes |
| Typefaces the site uses | Yes | Yes |
| Design tokens (type scale, spacing, component styles) | No | Yes |
| Crawl, search and markdown for the rest of the web | No | Yes |
| Official SDKs | No One GET request; any HTTP client works | Yes Many languages, plus a CLI |
| MCP server for AI apps | Yes | Yes |
| Free tier | 100 free credits One-time, no card; the credits never expire | Monthly free allowance Resets each month, no card; it can also be tried with no sign-up or key, within a daily limit |
| How paid use is priced | $10.00 for 1,000 calls Prepaid credits that never expire, no subscription | Subscription Monthly or yearly plans, tiered by credits |
| What a failed call costs | Nothing Only a 200 with a brand profile spends a credit | It depends A 403 or 404 page is billed; a scrape that returns nothing is not |
Firecrawl's column is read from its public docs and pricing page on September 28, 2026. The JupiterFetch column comes from the product itself. Products change, so treat that date as the limit of the claim and check a row before you rely on it.
How each of us charges
We charge $0.01 for each successful call, paid up front as credits that never expire. New accounts get 100 free credits once their email is verified, the smallest purchase after that is $10.00 for 1,000 calls, and there is no plan to pick. Nothing is charged unless you buy credits or switch on auto top-up.
Firecrawl’s billing page charges one credit per scraped page and lists extra charges for some formats, none of them branding. You can try it with no sign-up and no key, within a daily limit, and a free account gets an allowance that resets every month. On any paid plan a Firecrawl scrape costs less than one of our calls; what you pay for is a monthly plan, used or not. Their prices change, so we link to Firecrawl’s pricing rather than copy it.
Where we differ is what a failed call costs. We charge only for a 200 that carries a brand profile. Every error costs nothing, including a 504 when a fetch runs out of time and a 424 site_blocked when a site turns us away. Firecrawl charges for any page it returns, and its billing page says that includes a page that came back 403 or 404. A scrape that fails outright is free with them too.
Two things work the same way with both of us. An answer from cache costs as much as a fresh one. And a thin result still costs: from us that is a 200 with a low quality.score, so check the score before you trust a sparse profile.
When to choose Firecrawl instead
If you need the web and not only the brand, choose Firecrawl. Page content as markdown for a language model, a crawl of a whole site, search results you can scrape: that is what it is built for, and we do none of it. If you already call Firecrawl for pages, adding the branding format to the same call is simpler than adding a second vendor.
If you need the design system and not only the brand, such as the type scale, spacing and button styles to rebuild a site’s look, Firecrawl returns those and we do not.
If you want an SDK in your language, a free allowance that comes back every month, or you make enough calls that a plan costs you less than $0.01 a call, Firecrawl is the better fit. It has official SDKs in many languages. We have none: our API is one GET request with a bearer key.
Choose us when what you need is the brand, ready to use: several logos with their kind and theme, every image hosted on our CDN, nothing charged for an error, and credits that never expire, so you pay only for the calls you make.
Moving from the branding format
Call GET /v1/brands/{domain} from your server with your API key. It blocks until the brand is ready, for up to the wait you pass: 20 seconds by default, 60 at most. If it runs out and we hold an older copy of the brand, you get that copy as a 200 marked stale, which costs a credit. If we hold nothing, you get a 504, which costs nothing. Either way the fetch keeps going and fills our cache, so a retry a few seconds later is fast.
Then map the fields you read:
| Firecrawl branding | JupiterFetch |
|---|---|
logo | logos[0].source, and logos[0].vectorUrl for the SVG |
colors.primary, secondary, accent, background, textPrimary, textSecondary, link | colors.roles, under the same names |
fonts[].family | typography.fonts[].family, each with a role such as heading or body |
images.favicon | The logos entry whose kind is favicon |
images.ogImage | images.og.source |
colorScheme | colorScheme, which can also be both |
When we find no real brand mark, logos[0] is the best favicon-grade image we found instead, and quality.coverage.logo is false. Nothing on our side matches Firecrawl’s success, warning and error colors, or its spacing, component, animation, layout and personality fields. If your code reads those, keep Firecrawl for them.
Try it on your own domains
100 free credits, no card. After that, $0.01 per successful call.