Download the catalog as CSV
The file
qa-companies.csv holds 130 rows and 30 columns. Rows are sorted by the slug column, so two versions of the file can be compared line by line. Fields that hold several values, such as services or delivery locations, put them in one cell separated by a | character, because a comma is already the column separator.
Profiles of companies that were acquired or closed stay in the file with their status in the status column. Removing them would quietly rewrite the history of a market where acquisitions are common.
What the file does not contain
Review counts and review scores from external platforms are not in the file. This catalog collects no reviews of its own. Review counts and scores are aggregates from external platforms, shown with the date they were read. Those numbers are shown on each profile with the date they were read, and they stay there.
Sources are counted in the file but not listed in it. A single company can carry more than a dozen sources, and each one is a title, an address and a date, which turns a table into a document. The sources page lists all of them, and every profile shows its own with dates.
Nothing in the file is inferred. A cell is filled only when a public source states the value, which is the same rule the profiles follow. The methodology page defines each field and the criterion behind each applicability tag.
Licence and attribution
The file is published under CC BY 4.0. That licence allows copying, changing and commercial use, including in a product, on one condition: the source is credited. The CSV export covers structured profile fields. Review aggregates from external platforms are excluded from it.
A credit that satisfies the licence reads: QA Rating, QA Rating, CC BY 4.0. A link back to https://qa-rating.com counts as the credit when the medium allows a link.
The licence covers this compilation of fields. It does not cover the company websites, logos and case studies the fields were read from, and it grants no rights over the trademarks named in the name column.
Columns
The header row of the file, in the order the columns appear in it.
- slug
- Identifier used in this catalog and in the profile URL.
- name
- Company name as it is published by the company itself.
- former_names
- Earlier names recorded for the same company, separated by a pipe.
- status
- active, acquired or closed. A profile keeps its row after an acquisition.
- website
- Company website.
- founded
- Year the company was founded.
- hq_country
- Headquarters country as an ISO 3166-1 alpha-2 code.
- hq_city
- Headquarters city, when it is published.
- delivery_locations
- Countries where the delivery team sits, ISO 3166-1 alpha-2, pipe separated.
- team_size_band
- Headcount band, not an exact number. Empty means not published.
- ownership_type
- independent, subsidiary or part of a group. Empty means not published.
- services
- Service codes offered, pipe separated.
- industries
- Industry codes named by the company, pipe separated.
- frameworks
- Automation framework codes named by the company, pipe separated.
- engagement_models
- Engagement model codes offered, pipe separated.
- client_stages
- Client stage codes the company works with, pipe separated.
- certifications_confirmed
- Certificate codes confirmed against a registry, certificate or auditor report.
- signs_baa
- Whether the company signs a business associate agreement. Empty means unrecorded.
- gdpr_dpa
- Whether the company signs a GDPR data processing agreement. Empty means unrecorded.
- hourly_rates_usd
- Published hourly rates as grade:min-max in USD, pipe separated.
- min_project_size_usd
- Published minimum project size in USD.
- onboarding_days
- Published time to start, in days.
- crowd_tester_pool
- Published size of the crowdtesting pool, in people.
- device_lab_real_devices
- Published number of real devices in the company device lab.
- case_studies
- Number of published case studies recorded for this profile.
- named_clients
- Number of clients the company names publicly.
- applicability_tags
- Applicability tags computed from the fields above, pipe separated.
- sources
- Number of sources recorded for this profile. The sources themselves are on the profile page.
- last_verified
- Date the fields were last checked against sources.
- profile_url
- Full address of the profile page, where every field carries its source.
Questions
- Why are review scores and counts missing from the file?
- Because review counts and scores belong to the platforms that collected them, and this catalog only reads them. Redistributing an aggregate in a file would move it out of the context that makes it readable, including the date it was read on. Review figures stay on the profile pages, next to a link to the platform they came from.
- How often does the file change?
- The file is rebuilt with the site, so it changes whenever a profile changes. Every row carries the date its own fields were last checked, which is a better guide than the build date: a row checked eight months ago is eight months old no matter when the file was generated.
- What does an empty cell mean?
- An empty cell means the field is unrecorded, and it never means zero. This catalog leaves a field empty when no public source states a value, so an empty cell is a statement about the available sources rather than about the company. Counting cells is safe; treating an empty cell as a low value is not.