Skip to content
Fridman

KtoSprząta.pl: an industry platform for cleaning companies

KtoSprząta.pl is a directory of cleaning companies in Poland that I built on data from public registries: the company register (KRS), the VAT white list and the statistics office (GUS). Companies get a free profile and a free Pro panel with tenders, offers with reminders, a CRM and time tracking by QR code. From the first version (18 August 2026) to public launch took 3 days.

Any industry where customers look for contractors and companies need simple tools can have a platform like this. I build platforms for an industry or a partner network from PLN 60,000 excl. VAT. I am based in Kraków and work remotely across Poland.

3 days

from the first version to public launch, 18–21 August 2026 (as of 21 Aug 2026)

Company
KtoSprząta.pl, a directory of cleaning companies in Poland
Period
August–October 2026
My role
Idea, design and build. Today my AI routines handle development and moderation.
A similar project
from PLN 60,000excl. VAT

What it looks like on screen

The Pro panel from a company’s side: an offer with reminders, tenders from the region and time tracking by QR code.
Schematic of the Pro panel. The client, tenders and times are examples, not real data.

Why the cleaning industry needs a directory like this

Anyone looking for a cleaning company faces listings where it’s hard to check whether a company operates legally, and where. Small companies, in turn, rarely have the time or budget for paid tools for offers, tenders and time tracking.

I wanted a directory built on public registries, where every company’s tax number can be checked, and where owners get, for free, tools they’d pay a subscription for elsewhere. KtoSprząta.pl is also my test bench: I use it to see how fast a platform can be launched and how much of its daily development I can hand to AI agents.

What had to work from day one

  • Every company from a registry, its tax number with a valid checksum
  • A search that copes with typos and Polish characters
  • A company profile that can rank in Google for the company’s name and services
  • Reviews that follow the EU Omnibus rules
  • Tools that companies get for free

What I built

The platform has three parts: a directory with search, free industry tools and a Pro panel for companies.
  • Data from registries, not forms

    Companies come from KRS, the VAT white list and GUS, filtered by activity codes (PKD). After two imports there were 349, and after looking up company websites by tax number, 418. In that round, companies with a confirmed tax number went from 153 to 219, phone numbers from 1 to 66 and websites from 29 to 97. Of 188 candidates I rejected 120: 82 sole traders, 20 not on the VAT white list, 9 duplicates and 9 with the wrong activity code.

  • Free Pro panel

    Public tenders from BZP with a weekly digest by region (a 75-⁠day sample held 148, about 1.6 a day), offers with the company’s logo and three AI-written follow-up emails on days 3, 7 and 14, a CRM with an ICS calendar, time tracking by QR code or NFC, and a moderated job board.

    runs on its own
  • A search that forgives mistakes

    It searches in a cascade: by identifier, all words, any word and similarity. It corrects typos, knows 256 query aliases and searches within 10, 25, 50 or 100 km.

    runs on its own
  • Profiles built for search

    Every profile has LocalBusiness structured data, and owners can add their own services, FAQ, prices and projects. The goal is simple: the profile ranks high in Google for the company’s name and its niche services.

  • Sitemap for Google

    Google accepted a sitemap of 826 pages. A day later I trimmed it to 608 by taking empty listings out of the index.

  • Free industry tools

    A labour-time calculator, a 2026 salary calculator (60+ test cases), a contract builder that generates the file in the browser without sending any data, a map of legal requirements (17 requirements across 5 segments, every act checked against api.sejm.gov.pl) and more. 14 of them are in the menu.

  • Open norms dataset

    Cleaning time norms under CC BY 4.0, described in the reefa.pl SEO case study.

  • AI moderation and development

    runs on its own

    Moderation runs 3 times a day, and the development routine ships one backlog item daily, with automatic rollback. Details are in the AI agents case study.

  • An AI-run blog

    runs on its own

    A new article every day at 7:07, with a cover image picked by a vision model.

  • Three languages

    Polish, English and Russian. The Pro panel alone has 1,557 translation keys per language.

How it fits together

I don’t enter a single company by hand. Everything starts in public registries.
  1. 1. Registries

    • KRS company register

    • VAT white list

    • GUS statistics office

    • Company sites by tax number

      phones, websites, emails

      runs on its own
  2. 2. Filter and database

    • Activity-code filter and tax-number checksum

      runs on its own
    • Postgres: full text and trigrams

      Polish characters and typos

      runs on its own
  3. 3. Directory

    • Profiles with LocalBusiness data

    • Search within 100 km

      runs on its own
    • AI moderation 3 times a day

      disputes come to me

      runs on its own
  4. 4. Pro panel

    • Tenders from BZP

      weekly digest

      runs on its own
    • Offers with reminders

      days 3, 7 and 14

      runs on its own
    • CRM and ICS calendar

    • Time tracking by QR or NFC

Data from KRS, the VAT white list and GUS passes a filter into a database with full-text search. Profiles and search are built on it, and companies get a Pro panel with tenders, offers, a CRM and time tracking.

Key:runs on its owna person decidesdata, people or a place of work

Numbers from the system

Numbers from the system, with the date of each measurement
What I measureValue
From first version to launchas of 21 Aug 20263 days (18–21 August)
Companies in the directorythe directory grows, so today’s number may differas of 24 Aug 2026418
Geocoded citiesas of 24 Aug 2026149
Tax-number checksum errors among candidatesas of 24 Aug 20260 of 188
Query aliases in the searchas of 19 Aug 2026256
Pages in the sitemapas of 22 Aug 2026826 accepted, then 608
Tenders in the BZP sampleas of 8 Sept 2026148 in 75 days, about 1.6 a day
Pro panel translation keysas of 8 Sept 20261,557 per language
Legal requirements on the mapas of 29 Aug 202617 across 5 segments
SEO, GEO, AEO audit after launch (out of 10)as of 22 Aug 2026SEO 6, after fixes 7; GEO 7; AEO 8

The company count is from the last measurement I have on record. The directory keeps growing, so it may differ today.

I don’t publish details of the platform’s operator or its financial results.

What it runs on

Next.js 16, Vercel
website and panel
Supabase: Postgres with RLS
data, permissions, search (unaccent, pg_trgm)
KRS API, VAT white list, GUS
company data sources
Resend
offer and reminder emails
Google OAuth
company sign-in
Anthropic Claude
moderation, reminder emails, blog

What you can take for your company

  • Public data as the foundation

    In many industries, registries such as KRS, the VAT white list and GUS give you a ready-made list of companies. A platform for your industry or partner network doesn’t have to start from an empty list.

  • A free tool as a reason to sign up

    Tenders, offers with reminders, time tracking: a tool a company needs every week is a concrete reason to create an account and keep coming back.

  • Launch fast, then improve daily

    I launched the first version after 3 days, and since 14 October 2026 the platform has grown by one change a day, with automatic rollback. With you, too, we start from a version that works rather than a six-month specification.

  • SEO built into the structure

    Every profile has structured data and its own URL, and empty listings stay out of the index. I plan that structure before the first line of code.

Services where I do this

  • Custom business systems

    A panel, CRM, field-team app or production system, built around how your company actually works.

    from PLN 60,000excl. VAT
  • SEO and organic growth

    from PLN 7,000/monthexcl. VAT

Other case studies

  • 13An operating system for a service companyOne panel for the whole company: schedules and shifts, finances across several entities, petty cash, bank matching, e-signed contracts and client reports.
  • 1,100 hA bot for the field teamA shift starts and ends with one button in Telegram, with location and photos. The rebuild removed 55 issues and is covered by 19 scenario tests.
  • 11AI agents that run part of the company11 routines and agents: a panel doctor, SEO content, lead growth, moderation, tenders and a morning brief. Five of them log every decision, and releases roll back automatically.
  • +30%Organic growth of reefa.plA plan of 33 SEO and GEO changes, 29 free tools, an open norms dataset (460 categories from 2,338 rows of data) and a content routine. Clicks from Google rose from 8.6 to 11.2 a day in July.

Let’s talk about your company

30 minutes, no sales deck. You tell me where time and money leak, and I tell you what I’d do first and roughly what it costs.