Website Logo & Brand Assets Extractor API
Pricing
from $0.75 / 1,000 successful results
Website Logo & Brand Assets Extractor API
Extract website logos, favicons, brand colors, hero images, metadata, and official social profiles from up to 10,000 domains. Get structured data for CRM enrichment, directories, competitor research, and automation. From $0.75 per 1,000 successful results; partial and failed websites are free.
Pricing
from $0.75 / 1,000 successful results
Rating
0.0
(0)
Developer
DataScraperES
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Website Logo & Brand Assets Extractor API turns public domains into structured logos, favicons, brand colors, representative images, page metadata, and official social-profile links without browser setup. Submit one website or process a batch through Apify Console, API, CLI, schedules, or integrations.
What this Actor does
Website Logo & Brand Assets Extractor API reads server-rendered HTML, linked web app manifests, image metadata, and selected image pixels. It identifies the best available brand name, favicons, apple-touch icons, header logos, inline logo SVGs, a ranked color palette, Open Graph and hero images, canonical page metadata, and profile-like social links. Every unique input receives a Dataset row, including partial and failed extractions, so bulk workflows can account for every website.
Use cases
- Enrich company, CRM, directory, or competitor records with visual brand assets.
- Create link previews, media kits, design references, and brand-monitoring datasets.
- Supply structured website identity signals to automation, data pipelines, and AI workflows.
- Compare public logos, colors, metadata, and social destinations across domains.
How to use
- Open the Actor in Apify Console.
- Enter one or more public website URLs or bare domains.
- Click Start and open the Dataset when the run finishes.
Input
urls is the only input and accepts 1–10,000 public HTTP(S) URLs or bare domains. Bare domains use HTTPS, URL fragments are removed, and exact equivalent inputs are processed once. Concurrency, request timeout, asset-analysis capacity, and Dataset writes are managed in bounded batches so large input lists do not require a proportional increase in run memory.
This is the exact input used for the successful output item below:
{"urls": ["https://www.wikipedia.org"]}
Output
The default Dataset contains one item per normalized, unique input. Results are appended progressively in input order, so completed batches become available before a large run finishes without changing row order. status is ok when brand assets were found, partial when the page loaded but no logo, color, or backdrop signal was found, and failed when the page could not be processed. Failed items keep empty asset arrays and include a structured error; one failed website does not discard other results. A final SUMMARY record in the default Key-Value Store contains aggregate run counts.
This is the complete Dataset item from a real successful run:
{"inputUrl": "https://www.wikipedia.org","finalUrl": "https://www.wikipedia.org/","domain": "www.wikipedia.org","status": "ok","httpStatus": 200,"brandName": "Wikipedia","page": {"title": "Wikipedia","description": "Wikipedia is a free online encyclopedia, created and edited by volunteers around the world and hosted by the Wikimedia Foundation.","siteName": null,"language": "en","canonicalUrl": null,"manifestUrl": null},"logos": [{"url": "https://www.wikipedia.org/static/apple-touch/wikipedia.png","type": "apple-touch-icon","source": "link[rel=apple-touch-icon]","alt": null,"width": 160,"height": 160,"aspectRatio": 1},{"url": "https://www.wikipedia.org/static/favicon/wikipedia.ico","type": "favicon","source": "link[rel=shortcut icon]","alt": null,"width": 48,"height": 48,"aspectRatio": 1},{"url": "https://www.wikipedia.org/portal/wikipedia.org/assets/img/Wikipedia-logo-v2.png","type": "icon","source": "logo-like image","alt": null,"width": 200,"height": 183,"aspectRatio": 1.09}],"colors": [{"hex": "#f0f0f0","source": "logo","usage": "primary"},{"hex": "#c0c0c0","source": "logo","usage": "secondary"},{"hex": "#303030","source": "logo","usage": "accent"},{"hex": "#909090","source": "logo","usage": "supporting"},{"hex": "#606060","source": "logo","usage": "supporting"}],"backdrops": [{"url": "https://upload.wikimedia.org/wikipedia/en/thumb/8/80/Wikipedia-logo-v2.svg/250px-Wikipedia-logo-v2.svg.png","source": "open-graph","description": "Open Graph image"}],"socialProfiles": [],"assetCounts": {"logos": 3,"colors": 5,"backdrops": 1,"socialProfiles": 0},"warnings": [],"error": null,"scrapedAt": "2026-08-25T09:27:22.684Z"}
Results can be exported in Apify-supported Dataset formats such as JSON, JSONL, CSV, XML, and Excel. Nested arrays and objects are preserved most naturally in JSON or JSONL.
Pricing
The Actor uses plan-based pricing for each successful website result:
| Apify plan | Equivalent per 1,000 successful results | Price per successful result |
|---|---|---|
| Free | $1.00 | $0.00100 |
| Bronze | $0.90 | $0.00090 |
| Silver | $0.80 | $0.00080 |
| Gold | $0.75 | $0.00075 |
| Platinum | $0.75 | $0.00075 |
| Diamond | $0.75 | $0.00075 |
Apify selects the applicable price from the customer's plan. A charge is triggered only after an item with status: "ok" is saved to the default Dataset. partial and failed items are returned without a result charge, and there is no start fee. Platform usage for the Actor run is included in the event price.
Related Actors
| Actor | Best for |
|---|---|
| Favicon Extractor | Downloading lightweight website icons in bulk and optionally storing the image files in Apify. |
| Bulk Website Screenshot & PDF Generator | Capturing full-page visual evidence when individual brand assets are not enough. |
| Website Technology Lookup – CMS, Hosting & Tech Stack Data | Adding CMS, hosting, and technology context to the same domain list. |
| Content Style & Brand Voice Checker | Auditing website copy against editorial and brand terminology rules after asset extraction. |
Limits and data quality
- A run accepts up to 10,000 input values and processes equivalent inputs once. Results are written progressively in ordered batches; large runs can take several hours depending on website response times, so use a suitable run timeout when overriding the Actor defaults.
- The Actor reads public server-rendered HTML; it does not execute page JavaScript or log in. Assets rendered only by client-side code may be absent.
- Pages are limited to 5 MB, web manifests to 1 MB, and each analyzed image to 8 MB. Transfers stop as soon as the applicable decoded-body limit is exceeded. Up to 20 external logo or icon candidates per website are analyzed for dimensions and colors; all detected candidate URLs are still returned.
- Websites can block automated requests, change markup, return regional variants, or provide no explicit brand signals. An unavailable or restricted website is returned as a structured failed item rather than retried repeatedly.
- Color labels are ranked estimates from explicit metadata, manifests, SVG values, and sampled logo pixels. They are not an official brand-guideline declaration.
- Inline header logos can be returned as
data:image/svg+xmlURLs. External URLs can expire or change after the run. - Private, local, credential-bearing, non-HTTP, and unsafe redirect destinations are rejected.
- Social links are filtered for profile-like paths, but websites can link third-party or regional accounts that require human review.
Frequently asked questions
Does this Actor use a browser?
No. It uses HTTP requests and parses the returned HTML, manifests, and images. This is faster and lighter than browser automation, but JavaScript-only assets are outside its coverage.
Does it download the image files into Apify storage?
No. Dataset items contain source URLs, dimensions when available, and extracted color signals. Use Favicon Extractor for stored favicon binaries or Bulk Website Screenshot & PDF Generator for full-page files.
What happens when one website fails?
The Actor returns a failed Dataset row with a code, message, and HTTP status when available, then continues with the other inputs. A page that loads without detectable assets returns partial instead.
Why can the detected palette differ from official brand colors?
The palette is inferred from public page metadata and visible logo pixels. Image compression, gradients, regional pages, dark-mode assets, and missing theme metadata can change the ranked result.
Responsible use
Use this Actor only for lawful purposes and in accordance with applicable website terms, privacy obligations, copyright, trademark, and other third-party rights. Public availability of an asset does not grant ownership or permission to imply affiliation or endorsement.
Support
Open an issue in the Actor's Issues tab and include the run ID, a reproducible public input, the relevant Dataset item, and the expected versus actual result. Do not include API tokens, credentials, or private URLs.