Back to Web Applications
Portfolio · Side projectLive

CyprusCalc.

Thirteen calculators for the everyday numbers of life in Cyprus: pay, tax, car, property, work, energy, loans, dates. Greek first, English second. Nothing to sign up for, and every figure traceable to the authority that published it.

Visit cypruscalc.com
calculators
13calculatorsacross 8 categories
worked examples
52worked exampleseach with a known answer
tests
68testsgreen, or it does not ship
languages
2languagesGreek first, then English

The site

One page, one number, no sign-up.

Type a gross salary and the answer is there before you finish reading the page. The maths runs in your browser, so nothing you type leaves the device.

One page, one number, no sign-up.

cypruscalc.com, September 2026

Why it exists

The answer existed. Finding it did not.

To find out what is left of your salary or what the Land Registry will charge, you had to dig through five websites or ask an accountant.

Cyprus publishes all of it: tax bands, contribution rates, transfer fees, road tax, electricity tariffs. It is spread across six authorities in PDFs written for people who already know the answer. CyprusCalc puts one question on one page and shows its working.

What it covers

Thirteen questions people actually ask.

  • Pay
    • Net salary
  • Tax
    • Income tax
    • VAT
  • Car
    • Road tax
  • Property
    • Transfer fees
    • Rental yield and tax
    • Capital gains tax
  • Work
    • Redundancy and notice
    • Self-employed tax
  • Energy
    • EAC electricity bill
    • Solar panel payback
  • Loans
    • Loan and mortgage
  • Dates
    • Working days

Why the numbers are right

Every rate is copied from the body that set it.

Tax bands, contribution percentages, ceilings, fees. Each one carries the publication it came from and the date it was last checked, printed at the bottom of the calculator that uses it.

  • 01Tax Department
  • 02Social Insurance Services
  • 03EAC
  • 04Department of Lands and Surveys
  • 05Road Transport Department
  • 06Central Bank of Cyprus

Last verified: 3 September 2026

If a source is not named, the number should not be there.

Every rate is copied from the body that set it.

How it is checked

A wrong number cannot be published.

Every calculator ships with examples that have a known answer, the kind an accountant works by hand. They re-run automatically on every change to the site, and a failure stops the release. The first example of each calculator is printed on its own page, so the proof is public rather than claimed.

worked examples, all with a verified answer
52worked examples, all with a verified answer
tests run on every push and pull request
68tests run on every push and pull request
releases that ship with a failing example
0releases that ship with a failing example

Two languages

Greek first, not Greek later.

Both editions are built from the same calculator definition, with their own URLs and their own conventions: €2.137,67 in Greek, €2,137.67 in English, the Greek question mark, titles that stay under sixty characters in both. Forty-six pages, hreflang in the sitemap, no machine translation.

Greek first, not Greek later.

Under the hood

Rules are data. Everything else is generated.

Rates live in JSON, one folder per year

Eleven tables for 2026, each carrying its source and check date. January's update is: copy the folder, update the values, repoint one import. A workflow opens the reminder issue every 1 December with the file list.

One definition generates the whole page

Fields, maths, examples, FAQ and sources go in one file. The page, the category listing, the sitemap entry, hreflang and the structured data come out of it.

Static export, served from the edge

Next.js builds to plain files, a Cloudflare Worker serves them. There is no database and no server to keep alive, so there is nothing to leak and nothing to pay for.

The maths runs on the visitor's device

No amount anyone types is ever sent anywhere. That is a privacy claim the architecture makes for itself, not a policy sentence.

  • Next.js 16
  • React 19
  • TypeScript
  • Tailwind 4
  • Vitest
  • Cloudflare Workers

My role

All of it.

The product decision, the rule research against each authority's own publication, the calculator maths, the bilingual copy in both languages, the build, and the yearly maintenance that keeps it true.

Try it with your own salary.

Thirteen calculators, free, no sign-up, and the result appears as you type.

Open cypruscalc.com