Methodology & data
Where the data comes from
AgencyRadar combines multiple public sources so that every agency profile is built on verifiable facts, not self-promotion:
- Slovak Register of Financial Statements (registeruz.sk)(opens in a new tab) — revenue, profit, founding date and size category. Open API, CC0.
- Register of Legal Entities (Statistical Office of the SR) — legal form, company ID (IČO), registered office, business activities; for Slovak records also legal status and liquidation / insolvency status (RPO status codes). Open API, CC-BY 4.0 — attribution: ŠÚ SR / RPO.
- Financial Administration of the SR (opendata.financnasprava.sk)(opens in a new tab) — VAT-payer status (platiteľ DPH) for Slovak records. CC-BY 4.0 — attribution: Finančné riaditeľstvo SR.
- Business Register of the SR (orsr.sk)(opens in a new tab) — court-register entry confirming IČO against company name, and the verification link printed beside published registry facts. public register, free access.
- Registr smluv (data.smlouvy.gov.cz)(opens in a new tab) — public-sector contract counts, distinct public buyers, award years and koruna totals, matched on IČO against the published contract counterparties. open data, CC0.
- ARES (Czech business register) — legal form, IČO, registered office and legal status for Czech records — including liquidation and insolvency proceedings, which ARES reports from the insolvency register (ISIR). Czech open data.
- Czech VAT-payer register — unreliable-payer flag (adisrws.mfcr.cz)(opens in a new tab) — unreliable-VAT-payer status (nespolehlivý plátce, §106a ZDPH) for Czech VAT-registered records — the published vat_unreliable risk flag. public register web service (Finanční správa ČR), free access.
- GitHub (github.com)(opens in a new tab) — public repositories and organisation activity behind the open-source signal. public API, per GitHub terms of service — facts only, linked to the profile.
- Pretlak (pretlak.com)(opens in a new tab) — the agency or freelancer's own website, town and self-declared company ID (IČO), plus the listed name of a solo freelancer where no register holds one — the Slovak creative and marketing scene's own directory. public web pages, no formal licence — read under robots.txt (User-agent: * / Disallow: empty), facts only, attributed and linked to the profile they came from.
- Na volné noze (navolnenoze.cz)(opens in a new tab) — the freelancer or studio's own website, town, self-declared company ID (IČO) and self-declared service categories, plus the listed name of a solo professional where no register holds one — the Czech independent-professional community's own curated catalogue. public web pages, no formal licence — read under robots.txt (which disallows /hledej, /menu/, /soubory/, /temp/ and the document paths, none of which this crawl touches), facts only, attributed and linked to the profile they came from.
- Agency websites and public directories — services offered, technology, references, contacts, and the name and website of a member or credited agency (ADMA, Clutch, trade-association member lists and published competition results, among others). public web pages, no formal licence — facts only, attributed and linked to source.
Every profile carries a confidence label: verified (key facts confirmed in registries), partially verified and unverified. Always re-confirm facts with the agency before contracting.
How we read agency websites. We identify ourselves in the User-Agent, with a link to the explanation; we obey robots.txt and Crawl-delay; we never sign in or submit a form. The full rules — including the two lines that turn us off — are on our crawler page.
Capability flags: enterprise, white-label, maintenance, SLA, hosting
Five finder filters — “Enterprise experience”, “White-label / subcontracting”, “Long-term maintenance”, “SLA-backed support” and “Hosting” — are claims read off the agency’s own website, not register facts. Each is tri-state: yes (the agency says so on its site), no (it rules it out, or we verified it) and unknown (it never said). Unknown is not “no”: the filter keeps only records marked yes, but the profile and the comparison never print “No” where nothing was established. The count beside each checkbox is the number of records marked yes under the other filters currently applied.
Agency, studio or freelancer?
The catalog covers three kinds of provider, so you can match the partner to the job:
- Agency — an established team, usually 10+ people, with a track record, processes and the capacity for larger or long-running projects. The safest choice for enterprise work or when continuity matters.
- Studio — a boutique team of roughly 2–4 people. More hands-on senior involvement and flexibility than a large agency, at lower overhead — a good fit for focused builds and design-led work.
- Freelancer — an independent solo professional. Usually the best value for smaller budgets and well-scoped tasks; you work directly with the person doing the work. We don't publish freelancers' personal contact details — reach out via their website.
Filter by type in the finder, or set it as a preference in the matchmaker. Team size comes from the agency's own materials (its site and public directories) — we deliberately do not take it from the register (see Data freshness below). A freelancer's "1–9" band means one person.
Ratings and Premium placement
Result ordering and match scores follow published criteria only — data completeness and reliability, or your own brief in the matchmaker. Match scores always ship with an explanation of what they consist of. An agency's rating cannot be bought; the one paid effect on ordering is the Premium placement described below.
Premium placement. An agency can pay for a "Premium" tag, which gives it extra visibility — and nothing else. No position in an order, no score and no rating is for sale: Premium changes not one data point, not one score and not one ranking. There are exactly two things on offer:
- The "Premium" tag and a light accent on the card, everywhere that agency's card appears. It is a property of the record, not of a position — a Premium agency that reaches the top rows on its own data belongs there, and nothing about that was bought.
- Reserved, labelled slots on exactly 4 surfaces, listed below. Paid placement exists nowhere else in the product.
The exact list of places a Premium profile is shown. This list is complete
and it is generated from the code that performs the placement
(PREMIUM_SURFACES in src/lib/premium.ts) — an automated test fails
the build if a paid row appears on a fifth surface without appearing here too:
/agencies— The finder, and only in the "Recommended" order: three reserved slots at positions 6, 7 and 8, filled top-down and always adjacent. The first five results are organic and below the band the order resumes exactly where it left off — nothing is re-arranged and nothing drops off; records from position 6 down shift by as many places as there are filled paid slots (at most three). The band is labelled in the result list./top— One extra "Featured profile" position under the "Top 3 for you" list. It is a separate row below the three, not a fourth rank, so no matching agency loses its place. Nobody loses a place here./wizard— One extra "Featured profile" position under the matchmaker shortlist. Again an added position — the shortlist itself is purely organic. Nobody loses a place here./— One of the three cards in the home page's "sample of the market", at a position that rotates on every refresh. That row is a random sample and not a ranking — there is no rank for a paid card to jump — but it is one of those three cards, not a fourth.
The order is never re-arranged. In the finder's "Recommended" order the band at positions 6–8 (3 paid slots, filled top-down) is the single interruption of the organic order: above it and below it the results run in exactly the order they came out in, nothing is re-ranked and nothing drops off, and a record we moved into the band is not also listed in the organic part — so no agency appears twice on one page. The band is labelled in the results. Every other sort (by name, score, size, revenue, review rating and price) carries no paid slot at all — each of those is a claim about one specific fact, and a bought row would make the list a false statement about itself.
Machine-readable answers are always organic. The JSON API, the CSV export and
the MCP tools carry no paid placement in any form — "Recommended" there follows the published
criteria alone. (The premium field stays in the response: it is a fact about the
agency, not about a position it bought.)
Our own listing. AgencyRadar is operated by Webikon, which is also in the catalog and holds the same Premium placement — but does not pay for it: it is here by disclosure rather than by purchase, and it does not occupy one of the sellable slots. Its card and its profile are therefore labelled differently ("Our own listing", not "Premium"), and in the finder's band the caption says the position is not paid for. It is left out of the visibility rankings in our reports, so we are not ranking ourselves. Its data and its Score are computed by exactly the same rules as every other record.
How paid impressions are counted in our reports. The paid "Insights" product ranks the agencies shown most often in search results. Impressions from the paid band do count towards it — a buyer really did see them — but they are recorded separately, so every row states how many of its impressions were paid and a reader can subtract them. An agency looking at its own report sees the same split: how much its profile earned, and how much the placement bought. The modelled estimate we use until real impressions accrue cannot know that split and does not pretend to.
No paid slot for an agency the register reports on. A company in liquidation, in an insolvency procedure, dissolved, or under a Companies House strike-off/dissolution notice has its Score capped at the "At risk" band — and paid placement follows the same rule: no slot, on any surface, on any page load. It keeps the label (it holds the status) but not the position. This is not a labelling question: recommending, for money, the one thing our own data warns about is not something a disclosure can repair.
Premium placement applies only when the Premium agency matches the chosen filters — a filter that excludes it excludes it from the paid position too, and that position simply goes unused and stays empty (we never fill it with a substitute). At most 9 agencies hold Premium at a time (plus the operator's own listing, which is in the catalog by disclosure rather than by purchase). The paid positions rotate between them so that every Premium profile is shown at least once per 10 page loads — on each of the surfaces above.
Premium changes no agency's score, rating or underlying data, changes no other sort order including Score, and removes nobody from the results. The only effect on everyone else is in the finder: records from position 6 down in "Recommended" shift down by as many places as there are paid positions currently filled (at most 3). The "Featured profile" positions cost nobody their ranking, because they are not part of any ranking; the home page's market-sample card is one of three, but that sample is a random sample and carries no ranking at all. Every paid position is always clearly marked. Any agency can request Premium.
Embeddable score badge. An agency with a verified profile claim can embed a
badge showing its score on its own site (/api/badge/…). The badge always renders
from live data — when the score moves, the badge moves — and cannot be bought or edited: the
only way to one is ownership verification, and the only thing it shows is the published grade.
Operator disclosure. AgencyRadar is operated by the agency Webikon, which is itself listed in the catalog.
How the match score works
The matchmaker scores agencies against your brief in seven components:
- service fit against your project type (max 35 points),
- budget fit against the agency's minimum project size (max 20 points),
- your priorities — stability, enterprise experience, locality, full-service (max 25 points),
- location (max 10 points),
- buyer type — agencies looking for subcontractors see white-label-friendly firms boosted (max 10 points),
- preferred partner type — a soft boost for agencies, studios or freelancers per your choice (max 8 points),
- a bonus for registry-verified data (max 5 points).
AgencyRadar Score
Formula version 10. Every score on the site names the version that graded it; a change to any input, weight or threshold means a new version number.
The AgencyRadar Score is a transparent 0–100 grade built from four separate facets. It is computed only from the public data we already show on the profile — nothing gated feeds into it. It cannot be bought. Premium listings are labelled as such and change neither a score nor a band, and no position in any Score-ordered ranking — their one ordering effect is the "Recommended" slot described above. No agency can pay to be graded higher, and no agency is graded lower for not paying.
Every signal below carries the kind of evidence it rests on — a statutory filing, a public register, an independent third party, or the agency's own site. That distinction is deliberately on each row rather than in a footnote: it is the difference between a fact a company had to file and a claim it chose to make, and it is the first thing worth knowing about any grade.
Missing data is never counted as zero — an agency is graded only on what is known about it, and when too little is known we show no score at all. A known value must also never grade worse than an unknown one, so the score does not penalise a small team or a narrow specialism. The band is capped by how complete the profile is, so filling in more data sharpens the grade — and wherever the cap binds, the profile itself says so and how much coverage is missing. A legal-risk event (liquidation, dissolution or insolvency proceedings) always places the agency in the “At risk” band regardless of the other signals; an unreliable-VAT-payer listing caps the band at “Basic”. The score is indicative and does not replace your own due diligence before signing a contract.
The whole formula is below — every signal, its weight and the band thresholds. The same breakdown appears on each agency profile, including which signals we don't hold for it.
What the Score is built from
Public signals
The inputs are 15 signals from public sources — all of them visible on the profile too. Each is graded 0 to 1; what we don’t know about an agency is not graded at all.
Four facets
A facet is the weighted average of its known signals. Each facet then enters the final value at the share below, scaled by how much of that facet we actually know — a facet where we hold one signal of four carries a quarter of its share — and the shares are renormalised over the facets that have any evidence at all. So a facet we know nothing about is left out rather than counted as a zero, and thin evidence counts without deciding the grade. Full shares, before that scaling:
- Stability40%
- Momentum15%
- Track record25%
- Practice20%
Value and band
The result is a number from 0 to 100 and the band it falls into. The band is capped by data coverage, and a registry risk event pulls it down regardless of the number.
Stability
The registry and financial record — will they still be here in three years?
Each signal’s full share of this area
- Years trading Register ×124%
A company that has traded through a downturn is a different risk from a new one.
- Filed revenue Filing ×124%
collected for part of the market — graded where we hold it, never counted as missing where we do not
A recent statutory filing above a micro threshold is proof of a trading business.
- Profitable last filing Filing ×0.819%
A profitable year says the business funds itself, not that it is cheap.
- Positive net assets Filing ×0.819%
collected for part of the market — graded where we hold it, never counted as missing where we do not
A balance sheet in the black says the same as a profit, and small companies file it even when they file no profit at all.
- VAT standing Register ×0.614%
Whether the registers say anything at all about the company’s VAT standing. An unreliable-VAT-payer listing — under which the buyer can become liable for the company’s unpaid VAT — scores zero.
Momentum
Which way the company is moving, read from the comparative column of its own filing.
Each signal’s full share of this area
- Net assets direction Filing ×150%
collected for part of the market — graded where we hold it, never counted as missing where we do not
Every filing prints this year’s balance sheet beside last year’s — which way it moved is the question a single figure cannot answer.
- Revenue direction Filing ×150%
collected for part of the market — graded where we hold it, never counted as missing where we do not
Turnover this period against last, from the same filing. A company can grow sales while its equity falls, or the reverse — so this is a second question, not the same one.
Track record
What third parties say it delivered — clients, juries, and contracts the state had to publish.
Each signal’s full share of this area
- Client ratings Third party ×1.230%
Third-party ratings, blended and weighted by review volume.
- Published references Own site ×125%
Named clients or case studies are checkable; a services list is not.
- Public-sector contracts Register ×0.717%
Contracts the state must publish — a delivery record nobody can inflate.
- Industry awards Third party ×1.128%
collected for part of the market — graded where we hold it, never counted as missing where we do not
Jury awards from published winners lists, recent ones weighted most — the one thing a company cannot earn by merely lasting.
Practice
What the agency publishes about how it works — checkable, but chosen by the agency.
Each signal’s full share of this area
- Documented offering Own site ×0.622%
Whether the agency states what it does and what it builds with — clarity, not breadth.
- Certifications & partnerships Third party ×0.830%
Supplier partnerships and certifications are issued by third parties.
- Open-source activity Third party ×0.726%
Public code is engineering practice you can read before you buy.
- AI capability Own site ×0.622%
How far the agency has actually taken AI work, not whether it markets it.
Bands and their thresholds
| Band | Score | Data coverage |
|---|---|---|
| Excellent | ≥ 97 | ≥ 50% |
| Strong | ≥ 93 | ≥ 36% |
| Moderate | ≥ 84 | ≥ 27% |
| Basic | ≥ 45 | — |
| At risk | < 45 | — |
How results are ordered
Everywhere results are ranked by Score — the finder, the city and service league tables, compare — the same rule applies, in this order: band first, then the number within the band, then the exact value behind that rounded number, then evidence coverage. Band comes before the number deliberately: a 100 earned from four known signals is not better evidence than a 93 earned from eleven. The exact value comes next because the displayed score is rounded to a whole number: two agencies can both print 100 while one is really 99.6, and the one that genuinely scores higher must rank higher. Coverage decides last — given a genuinely equal score, the better-documented record ranks first.
When two records differ on none of those four, we know exactly the same about their evidence and we do not rank one above the other — the remaining order is alphabetical by name. The city and service league tables apply review rating and revenue before falling back to the alphabet. None of those criteria can be bought: Premium is labelled, it never changes a score or a rating, and it touches ordering in exactly one way — three reserved, labelled slots at positions 6–8 of “Recommended” in the finder, and nowhere else.
With no search query and no sort chosen, the finder’s “Recommended” order is: how certain we are of the company’s identity, then the Score band, then how completely the profile is filled in, then alphabetically. Choosing “Score” sorts by the rule above instead, and typing a query ranks textual matches first. One more thing reaches into “Recommended” in the finder, and it is paid: positions 6, 7 and 8 are reserved slots for records tagged “Premium” that placed lower, filled top-down, at most three at once, with or without a query. That band is labelled where it appears, records below it shift down by as many places as are filled, and nothing is re-ordered or dropped — a record moved into the band is not listed twice on the page. No other sort, including “Score”, is affected, and the JSON API, the CSV export and the MCP tools carry no paid slot at all.
Public-sector record& registered capital
For Czech companies we match, by IČO, the records of the Contracts Register (registr smluv) — contracts the state is legally obliged to publish, where the company is a supplier. We report the number of contracts, the number of distinct public buyers and the summed value over the swept window. It is a hard, independently verifiable delivery record that self-reported references can't inflate, and it also feeds the Track record facet of the Score. The count is for the swept window, not all-time history.
We also show registered capital from the register (for CZ, from ARES, converted from CZK at a fixed rate). It is the only financial figure the Czech open registers expose — turnover and profit are filed in the ČR only into the Collection of Documents as scanned PDFs, so we don't yet carry them at scale. Registered capital is a static, weak signal, so it does not feed the Score — it appears as supporting context on the profile only.
API
The data is also available programmatically: GET /api/agencies accepts the same
parameters as the finder filters (e.g. /api/agencies?services=ecommerce®ions=BA) and GET /api/agencies/{slug} returns one agency. The API requires a Pro license (Bearer token) — available on every tier, including the free one
you get after a quick sign-up. Contact fields, the catalog export (/api/export)
and the MCP server (/api/mcp) are on all tiers, each metered against the tier's
daily cap and per-list limit; the peer-benchmark report and market-demand insights are part of
the Business tier. The subscription never affects ranking or profile content.
Data freshness
Revenue and company facts are refreshed directly from the Register of Financial Statements (newest net turnover) after filing deadlines. Team size is deliberately not taken from the registry — it counts payroll employees only, while agencies commonly work with contractors.
Roadmap
- verified client reviews tied to company IDs,
- agency capacity signals for white-label collaboration.
Disclaimer
AgencyRadar is a research tool operated by Webikon, which is itself listed in the catalog (see "Ratings and Premium placement" above). We charge no commissions on deals. Data may be incomplete or outdated; if you spot an error, tell us and we will fix it.