How I Built the Unofficial Top-120 Ranking of Belgian Tech Companies
The framework, data, and scoring logic behind building original rankings from scratch, including limits and trade-offs
Welcome to edition #2 of How I GTM!
Have you heard about FrenchTech?
It’s the grouping of the top 120 most values tech companies in France.
Every now and then, FrenchTech publishes its rankings, and they did so in 2025. Belgium does not have such rankings. So I built the truly, unofficial Belgian Tech or BeTech rankings. Here’s how I did it 👇
The Final Result
But first, let’s look at the results.
Similarly to France, I split the Belgian rankings into 2 groups:
BeNext40: the top 40 companies with the best 2024 revenues and the highest total fundings
BeFT120, the following 80 companies based on their 2024 revenues and total fundings
This makes up for a list of the top 120 most valued tech companies in Belgium.
Based on revenue estimates, the top 3 are:
Odoo, the Walloon CRM powerhouse, who is also the most valuable tech company in Belgium
Loop Earplugs, the company in Antwerp behind the noise reducing earplugs that you see in every Belgian festival
Showpad, the AI-native revenue effectiveness platform, major player out of Ghent
Household names like Collibra, Deliverect and Lighthouse are missing from the main ranking. The reason is simple: they are not headquartered in Belgium.
The full list includes:
the main BeTech rankings, listing the top 120 most values tech companies in Belgium
An alternative “Belgian-by-heart” ranking, that includes tech companies that originated from Belgium
A list of companies who didn’t make the rankings
The full rankings are available here.
How I Got Started
I started by reusing the FrenchTech framework and adapted it to Belgium.
The first task was to get a list of eligible companies. The core criteria were:
Founded after 1 January 2005
Headquartered in Belgium
Independent and not publicly listed
Being considered as “innovative” (more on that later)
FrenchTech has other requirements, that I didn’t take into account, because they we hard to verify. For example FrenchTech requires 15% average growth over 3 years. FrenchTech also mandats the production of a carbon footprint report.
I split eligible companies by scale:
Top 20 by revenue or funding (BeNext40)
Next 80 by the same metrics (BeFT120)
For data, I relied on public sources:
LinkedIn company profiles
Public statements of companies
An official Belgian Tech report
Google searches for funding and revenue estimates
When exact numbers were missing, I computed best estimates. I added a confidence level to each revenue and fundraising figure to reflect data quality.
All values were converted to euros using fixed average rates.
How I Built It (Step by Step)
Step 1: Build the company base
I used Clay to build the initial list. I started from Belgian companies that raised at least $1M and operate in innovative sectors.
Raising money is a good enough proxy for innovation.
I manually selected the industries I deemed innovative enough to feature in the list. This is subjective by definition (for example, I excluded BioTech companies). I started with a wide enough list of industries. Below is the full selection:
Data Security Software Products, Desktop Computing Software Products, Embedded Software Products, IT System Custom Software Development, Mobile Computing Software Products, Software Development, Biotechnology, Climate Technology Product Manufacturing, Information Technology and Services, Nanotechnology Research, Space Research and Technology, Technology, Information and Internet, Technology, Information and Media, Hospitality, Mobile Gaming Apps, Mobile Food Services, Computer Games, Computer Hardware, Computer Hardware Manufacturing, Computer Networking, Computer Networking Products, Computer and Network Security, Computers and Electronics Manufacturing, Internet Marketplace Platforms, Internet Publishing, Real Estate, Digital Accessibility Services, IT Services and IT Consulting, IT System Data Services, IT System Design Services, IT System Installation and Disposal, IT System Operations and Maintenance, IT System Testing and Evaluation, IT System Training and Support, Financial Services, E-Learning, E-Learning Providers, Aviation and Aerospace Component Manufacturing, Retail Health and Personal Care Products, Accounting, Advertising Services, Blockchain Services, Business Intelligence Platforms, Climate Data and Analytics, Consumer Electronics, Defense & Space, Defense and Space Manufacturing, Education Management, Electronic and Precision Equipment Maintenance, Engineering Services, Fundraising, Health, Wellness and Fitness, Industrial Automation, Legal Services, Medical Devices, Mental Health Care, Medical Equipment Manufacturing, Personal Care Product Manufacturing, Renewable Energy Equipment Manufacturing, Renewable Energy Semiconductor Manufacturing, Robotics Engineering, Satellite Telecommunications, Semiconductor Manufacturing, Social Networking Platforms-
To make sure I wasn’t forgetting any household name on my initial list, I crossed-checked with companies named in the State of Belgian Tech Report 2025, published by Syndicate One, Bain & Company, SFPIM and Sofina .
I enriching all the startups mentioned in the report, using this ChatGPT prompt:
Role: you are a professional scraper
Goal: scrape the relevant information and output the information in the desired output format
Task:
- build a table for each of the following companies based in Belgium: [full list of companies mentioned in State of Belgian Tech Report 2025]
- go to the website of those companies and scrape the company domain website (url) and the company LinkedIn profile page (url)
Requirements:
-analyze the full HTML page, go beyond simple Javascript, click on "see more" if needed
-get the exact information requested. Do not invent any data.
-output format: a table with headers "Company Name", "Company Domain URL", "Company LinkedIn URL"
Step 2: Enrich company data
For each eligible company, I pulled:
Founding year
Country
Employee headcount
Total primary funding only
Estimated 2024 revenues
I scraped LinkedIn data to get the founding year and the employee headcount.
For the few companies where the founding year was missing, I launched simple Google searches to complete the table.
Watch out, “employee” is not a concept on LinkedIn. Anyone on LinkedIn can add any company on their profile. LinkedIn uses the term “associated members profiles”. This is the closest to an employee count you can get, but you should always take it with a pinch of salt.
To pull total primary funding, I used the following Claygent prompt. I made sure to exclude any secondary funding to avoid inflating valuations.
#VARIABLES#
{Company Name} = Company Name
{Company Domain URL} = Company Domain URL
#CONTEXT#
You are an AI-powered web scraper and researcher. Your task is to determine how much a company raised from its primary funding rounds only (exclude any secondary transactions). The company name is provided via a column value.
#OBJECTIVE#
Extract the total amount raised in primary funding rounds for the company named {Company Name}, and output only the amount. If you cannot determine the amount from reliable sources, output "Not found".
#INSTRUCTIONS#
1. Sources to search:
- Company press releases on their official website (e.g., News/Press pages).
- Credible business publications and databases (TechCrunch, Crunchbase News articles, PitchBook News posts, Dealroom press notes, Bloomberg articles), and other reputable media.
- Avoid user-edited or unreliable wikis/blogs unless they cite a clear primary source.
2. What counts as primary funding:
- Include: seed, pre-seed, angel, series A/B/C/…, venture rounds, equity crowdfunding primary issuance, convertible/SAFE primary financings if clearly new capital raised by the company.
- Exclude: secondary sales, tender offers buying existing shares, recapitalizations that are purely secondary, debt-only facilities (unless clearly part of an equity round amount), grants unless explicitly requested (do not include grants), and undisclosed/rumored amounts without a reliable source.
3. Disambiguation:
- Confirm you have the correct company by matching {Company Name} and {Company Domain URL}
4. Extraction rules:
- Prefer amounts explicitly stated in company press releases or major outlets. If multiple sources disagree, prioritize the company’s own announcement; otherwise choose the consensus among top-tier publications.
- If multiple primary rounds are listed with amounts, sum them to produce a single total primary funding amount. If only one round amount is found, return that single amount.
- If amounts are reported in different currencies, prefer the currency used by the company’s press release; otherwise choose the most frequently reported currency. Do not convert currencies—return the amount in the source currency with its symbol.
- Normalize formatting to a concise readable form: examples: "$25M", "$2.3B", "€10,000,000". Preserve currency symbol if present in source.
5. Output format:
- Return only the final amount string with no extra text, no units explanation, and no punctuation beyond what is in the amount itself.
- If you cannot confidently determine the primary funding amount from reliable sources, output exactly: Not found
6. Constraints:
- Do not use paywalled/authenticated sources.
- Do not infer or estimate; only report amounts explicitly stated by reliable sources.
- Exclude secondary transactions even if an article headline mentions a large figure—verify whether it’s primary vs secondary.
#EXAMPLES#
Input company name example: "Acme Robotics"
- Found sources: Company press release stating: "Acme Robotics raises $12M Series A"; TechCrunch corroborates $12M Series A and prior $3M seed.
- Extraction: Sum $3M + $12M = $15M.
Expected output: $15M
Input company name example: "Beta Health"
- Found sources: Only articles about a $20M secondary share sale; no primary raise amount disclosed.
Expected output: Not found
Then, I used formulas to normalize the amounts, and convert any foreign currencies into euros.
The above prompt yielded good results, with 90% high confidence. I made sure to manually double-check the top 10 (always a good practice, to make sure your prompt is OK).
To pull revenue data, I used the following Claygent prompt.
#VARIABLES#
{Company Name} = Company Name
{Company Website} = Company Website
#CONTEXT#
You are an AI-powered web researcher and data extractor. You will research a specific company provided via a table column {Company Name} and produce a best-guess estimation of the company’s total revenues for fiscal year 2024 (ARR-like when applicable). You must return a single numeric value in EUR with no abbreviations (e.g., 12500000, not €12.5M), along with a brief provenance note and method used.
#OBJECTIVE#
Estimate FY 2024 total revenues for the company {Company Name}, convert the estimate to a full numeric EUR value, and return the result formatted for insertion into FY2024 Revenue EUR.
#INSTRUCTIONS#
1) Identify the company:
- Use the exact string in {Company Name} as the company to research.
- In case of ambiguity or multiple companies , match the {Company Name} with the {Company Website}
2) Research sources (public only, no paywalled data):
- Official company website (about, pricing, press/news, investor/financial pages, terms, case studies).
- News articles, press releases, interviews, and blog posts mentioning revenue, ARR, MRR, pricing, customers, or growth metrics for 2024 or closest available period.
- Third-party business databases or credible reports that may cite revenue or ARR (only if publicly accessible without login/paywall).
- Do not use LinkedIn data if it requires authentication; skip any paywalled/blocked pages.
3) What to extract (in priority order):
- Direct FY2024 revenue or ARR if explicitly stated.
- If not available, use closest period metrics: FY2023 revenue, latest ARR/MRR, run-rate, quarterly revenue, or pricing x customer counts. Prefer 2024-period data; otherwise, adjust with stated growth rates to approximate FY2024.
- Extract any pricing tiers, number of paying customers/seats, ARPA/ARPU, and reported growth rates relevant to triangulating revenue.
4) Estimation methodology when exact 2024 value is missing:
- ARR-based: If ARR (or MRR) is available near 2024, use it directly (ARR) or multiply MRR by 12. If the date is not exactly FY2024, apply stated YoY growth to approximate FY2024.
- Pricing x customers: Multiply best-available paying customer count (or seats) by the most representative price (use midpoint if a range; for tiered mix, create a weighted assumption based on mentions). If only logo count is available, consider % paying if referenced.
- Growth extrapolation: If you have FY2023 revenue and a 2024 growth rate, apply growth to estimate FY2024.
- Choose the most defensible single approach based on evidence quality and recency.
5) Currency handling:
- If a value is provided in EUR, use it as-is.
- If provided in another currency (e.g., USD), convert to EUR using a reasonable FY2024 average rate. If no specific date is given, assume 2024 average FX of 1 USD = 0.92 EUR; 1 GBP = 1.16 EUR. State the assumed FX in the notes.
- Return the revenue as a full integer number of euros (no commas, no currency symbol, no decimals).
6) Data quality and validation:
- Cross-check at least two independent sources when possible.
- Prefer primary sources or direct quotes. Avoid unverifiable forums.
- If only a range is available, use the midpoint and state that in the notes.
- If absolutely no basis for estimation is found after reasonable searching, return 0 and note "insufficientPublicData".
7) Output format:
- Return a single JSON object with camelCase fields only.
- Keep the estimate numeric (integer) and in EUR.
#EXAMPLES#
Input example:
company: "Acme Analytics"
Expected output example (JSON):
{
"company": "Acme Analytics",
"fy2024RevenueEur": 12500000,
"method": "arrFromMRR",
"notes": "Used Dec 2024 MRR of $1.13M from press release on acme.com/news (Dec 15, 2024); ARR = MRR*12. Converted USD->EUR at 0.92. Cross-checked with TechNews article (Dec 2024)."
}
Final task:
Research {Company Name} and return a single JSON object with the following fields:
- company: the exact string from {Company Name}
- fy2024RevenueEur: integer, full numeric euros
- method: one of [directReported, arrDirect, arrFromMRR, pricingTimesCustomers, growthExtrapolation, midpointOfRange, insufficientPublicData]
- notes: concise provenance (key sources, dates, assumptions, FX rate used)
Return only the JSON object as the final answer.
The above prompt is the result of a lot of trial-and-error. My main take-away is to tell the LLM to work with estimates, and then to remove or double-check the low confidence results (which there were many).
Estimating the annual revenues of a company is hard, even for a human, because most companies don’t publish anything about this. That’s why it’s useful to work with different estimation methods, like computing the average pricing * number of customers.
Step 3: Validate and clean
I cross-checked revenue estimates against headcount and manually double-checked outliers. For example, large teams with near-zero revenue were flagged, as well as small teams with large revenues. If I could not find the data online, I would bring the revenues to 0 and flag them as “insufficientPublicData”.
Then I removed from the BeTech rankings the companies not headquartered in Belgium.
I consolidated the final dataset in Google Sheets for ranking and sorting.
Improvement: Check if company was acquired
Today’s list does not take into account whether the company has been acquired, or is in the process of being wound down.
This is an obvious next improvement. For example, Showpad, the 3rd most valuable company has been acquired mid-2025.
Hard-Won Lessons from the Field
I learned a few things building these unofficial rankings.
1) There’s no such thing as a tech company
I used 2 approaches to compile the list of eligible tech companies:
A classic sectorial approach, where I selected companies based on their industry
An authoritative approach, where I pulled companies mentioned in a credible publication
Both approaches are imperfect:
the sectorial approach is subjective by nature, as I’m the one deciding which industry is innovative or not (for example, I excluded BioTech companies, as they rarely feature in such rankings)
the authoritative approach is also subjective, as it’s just another person deciding which criteria to use
2) It’s hard to estimate a company’s turnover
It took me several iterations to get to a satisfactory prompt. Earlier versions:
did not explain the method they were using to get to their estimates
did not provide a confidence score
Still, the prompt is not outsanding, as it could not get revenue estimates from 25% of eligible companies.
It’s an inherent problem as companies usually don’t disclose their earnings. The FrenchTech doesn’t have this problem because companies voluntarily provide this data when applying.
3) Headquarters is a logical, but imperfect criterion
A Belgian company is a company based in Belgium, right?
Right. But this leaves out well-known companies who originated from Belgium or have Belgians as founders. Many consider household names like Collibra, Deliverect and Lighthouse as Belgian companies. Yet, they’re not based on location, and thus fell outside of the rankings.
To fix this gap, I also built a second list. This alternative view includes companies that are Belgian by origin but based elsewhere today.
Hope this was valuable! I’d appreciate you subscribe if it was!
Best
Adrien
Q&A
How to create a good ranking?
1) What is the BeTech ranking?
The BeTech ranking is an unofficial list of the 120 most valuable tech companies in Belgium. It follows the same structure as the FrenchTech Next40 and FT120 lists. Companies are ranked using estimated 2024 revenues and total primary funding. The goal is to give a clear and data based view of the Belgian tech ecosystem.
2) How are companies selected for the BeTech ranking?
Companies must meet four main criteria. They must be founded after January 1st 2005. They must be headquartered in Belgium. They must be independent and not publicly listed. They must operate in an industry considered innovative. Companies that fail one of these rules are excluded.
3) Why are some well known Belgian startups missing from the ranking?
Some famous companies are missing because they are not headquartered in Belgium. Location is a strict rule in the main ranking. Companies like Collibra or Deliverect were founded by Belgians but are based abroad. To address this, a second ranking was created for companies that are Belgian by origin.
4) What data sources were used to build the ranking?
The ranking uses public data only. Main sources include LinkedIn company profiles, company press releases, public interviews, official Belgian tech reports, and open web searches. No private or paywalled data was used.
5) How are BeNext40 and BeFT120 defined?
BeNext40 includes the top 40 companies by revenue or total funding. BeFT120 includes the next 80 companies using the same metrics. Together they form the list of the top 120 most valuable tech companies in Belgium.
6) Are acquired or inactive companies included?
Some acquired companies are still included if public data remains available. This is a known limit of the current version. Future updates should filter out companies that are fully acquired or no longer operating.
7) How should GTM teams use this ranking?
GTM teams can use the ranking to map the Belgian market. It helps with account prioritization, territory planning, and ecosystem analysis. The value is not the exact order but the structured view of scale and momentum.
8) Can this methodology be reused in other countries?
Yes. The framework can be reused anywhere. You need a clear company list, public funding data and revenue estimates. The key is to document assumptions and accept tradeoffs.
How can you estimate a company’s funding, revenues and headcount?
9) How is company funding calculated?
Only primary funding rounds are counted. This includes seed and venture rounds where new capital entered the company. Secondary transactions are excluded. Funding amounts are collected from public announcements and trusted media sources. All amounts are converted to euros.
10) How are 2024 revenues estimated?
Revenue estimates are built using public signals. These include reported revenue numbers, ARR or MRR figures, pricing data, customer counts, and growth rates. When no reliable signal exists, revenue is set to zero and marked as low confidence. Each estimate includes a confidence level.
11) Why use estimates instead of exact numbers?
Most private companies do not publish revenue data. Estimates are the only way to compare companies at scale. The same issue exists for any external tech ranking. The difference here is transparency. The methods and limits are clearly stated.
12) How accurate is LinkedIn headcount data?
LinkedIn does not track employees directly. It shows associated member profiles. Anyone can list a company on their profile. This means headcount data is an approximation. It is used as a consistency check, not as a core ranking metric.

