Company Profile from Website - Data & Tech Stack avatar

Company Profile from Website - Data & Tech Stack

Pricing

from $5.00 / 1,000 profile builts

Go to Apify Store
Company Profile from Website - Data & Tech Stack

Company Profile from Website - Data & Tech Stack

Turns any company website into a structured profile: name, legal name, VAT id, address, logo, description, language, country, technologies used (CMS, ecommerce, analytics, marketing, payments) and DNS-validated contacts. $0.005 per website.

Pricing

from $5.00 / 1,000 profile builts

Rating

0.0

(0)

Developer

Antonio del Olmo Tena

Antonio del Olmo Tena

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Give it a list of company websites and get back one structured profile per company: brand name, legal entity name, VAT or tax id, postal address, logo, description, language and country, the technologies the site runs on (CMS, ecommerce platform, analytics, marketing tools, chat, payments) and the contacts published on it (emails validated by DNS, phones, social profiles). Everything comes from the website itself: the home page plus its legal, about and contact pages.

Built for lead qualification and enrichment: know what a company is, where it is registered, what stack it uses and how to reach it, from a single URL. No browser, no proxies, no third-party data vendors: plain HTTP requests, fast and cheap.

What you get

One Dataset item per website with:

  • Identity: name, legalName, vatId, description, logo, language, country.
  • Location: address from structured data (street, postalCode, city, region, country) and addressText as written on the legal or contact page.
  • Technology: technologies ({ name, category }), plus cms and ecommerce for quick filtering. More than 50 signatures: WordPress, WooCommerce, Shopify, PrestaShop, Magento, Wix, Squarespace, Webflow, Next.js, React, Vue, Google Analytics, Google Tag Manager, Meta Pixel, Hotjar, HubSpot, Mailchimp, Klaviyo, Intercom, Crisp, Zendesk, Stripe, PayPal, Cloudflare and more.
  • Contacts: emails (with mxValid), phones, socials (Facebook, Instagram, LinkedIn, X, YouTube, TikTok, WhatsApp, Telegram, GitHub...).
  • pagesCrawled and pages.

Websites that cannot be fetched are returned with an error field and are not charged.

How to use it

  1. Open the Input tab.
  2. Paste the website URLs in Website URLs, one per line.
  3. Optionally change Max pages per website (8 by default) and Validate email domains.
  4. Click Start. Read the profiles in the Output tab or export them as JSON, CSV or Excel for your CRM.
  5. Schedule it to keep profiles fresh: every run compares with the previous one and emits PROFILE_CHANGED, TECH_ADDED, TECH_REMOVED, EMAIL_ADDED and PHONE_ADDED events.

Input

{
"websites": ["https://www.bermaeimports.es/", "https://example-company.com"],
"maxPages": 8,
"validateEmails": true
}
FieldDescription
websitesWebsite URLs. Up to 50 per run. Private or internal addresses are rejected.
maxPagesPages read per website, home page included. Default 8, maximum 30. Legal, about and contact pages first.
validateEmailsDefault true. Adds mxValid to every email by checking the domain's MX records.

Output example

{
"url": "https://acme-logistica.example/",
"name": "Acme Logística",
"legalName": "Acme Logística S.L.",
"vatId": "B12345678",
"description": "Transporte nacional e internacional",
"logo": "https://acme-logistica.example/logo.svg",
"language": "es-ES",
"country": "ES",
"address": { "street": "Calle Mayor 1", "postalCode": "28001", "city": "Madrid", "region": null, "country": "ES" },
"addressText": "Calle Mayor 1, 28001 Madrid",
"technologies": [{ "name": "WordPress", "category": "cms" }, { "name": "WooCommerce", "category": "ecommerce" }, { "name": "Google Analytics", "category": "analytics" }, { "name": "Stripe", "category": "payments" }],
"cms": "WordPress",
"ecommerce": "WooCommerce",
"emails": [{ "email": "info@acme-logistica.example", "mxValid": true, "source": "mailto", "page": "https://acme-logistica.example/" }],
"phones": [{ "number": "+34912345678", "source": "text", "page": "https://acme-logistica.example/" }],
"socials": { "linkedin": "https://www.linkedin.com/company/acme" },
"pagesCrawled": 8,
"timestamp": "2026-10-03T12:00:00.000Z"
}

Pricing

You pay per profile, nothing else:

  • Profile built ($0.005): one website with at least some data found (identity, contacts or technologies).
  • Profile changed ($0.005): only in scheduled runs, when a company's profile changed since the previous run.
  • Actor start ($0.00005): Apify's standard start fee.

Websites that fail are free. 1,000 profiles cost $5. Separate tools for technology detection alone charge $0.10 per website.

Use it as an API

curl -X POST "https://api.apify.com/v2/acts/USERNAME~company-profile/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"websites":["https://www.bermaeimports.es/"]}'

Replace USERNAME~company-profile with the Actor id shown on this page. The call returns the profiles directly. The Actor is also available to AI agents through Apify's MCP integration.

FAQ

legalName or vatId are empty. They are read from the legal notice, imprint or terms page. Sites without those pages, or that publish them as images or PDFs, do not expose them. The name field always has a value (structured data, Open Graph, title or domain).

Which VAT formats are recognized? Spanish CIF/NIF, EU VAT ids (DE, FR, IT, PT, NL...), UK VAT numbers and similar identifiers announced with labels such as CIF, NIF, VAT, IVA, USt-IdNr, TVA, NIPC or KvK.

How reliable is the technology detection? It matches well-known signatures in the HTML of the crawled pages (scripts, CSS paths, tags). It detects what is loaded on those pages, not server-side software.

Does it respect robots.txt? Yes. Pages disallowed for all crawlers are skipped.

Is anything bypassed? No. The Actor reads public pages with plain requests, never requests private or internal addresses and never evades anti-bot systems.