Avoin data · CC BY 4.0 · ei API-avainta
Todistusvalinnan data kehittäjille
Rakennatko todistusvalintalaskuria tai muuta hakijan työkalua? Pisteytystaulukot, kynnysehdot ja pisterajat saa täältä valmiina JSON- ja CSV-tiedostoina. Data on maksutonta, osoitteet pysyvät samoina ja tiedostot voi hakea suoraan selaimesta (CORS on auki). Samaa dataa käyttää oma todistusvalintalaskurimme.
Pisteytys tarkistettu virallisista lähteistä 28.10.2026 · pisterajat päivitetty 13.11.2026 · 11 yliopistojen taulukkoa ja AMK-taulukko · 55 alaa · 2851 pisterajariviä
Tiedostot
- Pisteytys
Aineet, yliopistojen 11 pisteytystaulukkoa (2026 alkaen), ammattikorkeakoulujen taulukko, alat kynnysehtoineen ja laskentasäännöt. Tämä yksi tiedosto riittää pisteiden laskemiseen.
https://opiskeluakatemia.fi/avoin-data/todistusvalinnan-pisteytys.json
- Pisterajat
Hakukohteiden alimmat ja ylimmät hyväksytyt pisteet, ensikertalaiset erikseen, uusin ja aiemmat aloituskerrat. Jokaisella rivillä on pisteytystaulukon numero.
https://opiskeluakatemia.fi/avoin-data/korkeakoulujen-pisterajat.json
- Pisterajat (CSV)
Samat pisterajat taulukkolaskentaan ja data-analyysiin.
https://opiskeluakatemia.fi/avoin-data/korkeakoulujen-pisterajat.csv
- Yo-arvosanarajat
Ylioppilaskokeiden arvosanojen pisterajat aineittain ja tutkintokerroittain.
https://opiskeluakatemia.fi/avoin-data/yo-pisterajat.json
- Esimerkkikoodi
JavaScript-moduuli ilman riippuvuuksia: calculatePoints laskee pisteet ja checkThreshold tarkistaa kynnysehdon pisteytystiedostosta.
https://opiskeluakatemia.fi/avoin-data/todistusvalinta-esimerkki.mjs
Tiedostot päivittyvät samoihin osoitteisiin, kun viralliset taulukot tai pisterajat muuttuvat. Hae ne palvelimella tai käännösvaiheessa ja pidä kopio välimuistissa; vastauksissa on tunnin välimuistiotsake. Kopiot ovat myös GitHubissa ja Hugging Facessa.
Näin pisteet lasketaan
Jokaisella alalla (fields) on pisteytystaulukko (tables). Taulukossa on paikkoja (slots), yliopistoissa viisi tai kuusi ja ammattikorkeakouluissa viisi. Säännöt ovat samat kuin tiedoston rules-kentässä:
- Pisteet lasketaan paikoittain (slots): jokaiseen paikkaan tulee enintään yksi koe ja jokainen koe enintään yhteen paikkaan. Valitaan se jako, joka tuottaa eniten pisteitä.
- Sama aine tuottaa pisteitä vain kerran (subjects[].group): esimerkiksi pitkästä ja lyhyestä matematiikasta lasketaan parempi.
- Paikka, jossa on rows, pisteyttää kokeen ensimmäisellä rivillä, jonka match-ehdot täyttyvät. Paikka, jossa on from: "other", pisteyttää kokeen taulukon other-riveillä; kind: "real" rajaa paikan ainereaaleihin (taulukko 10).
- Yliopistojen taulukoissa äidinkielen paikkaan kelpaa vain paras äidinkielen koe (match.best). Jos äidinkielen kokeita on kaksi tai useampia, ne voi pisteyttää myös other-rivillä "Pitkä kieli". Muuten äidinkieli ei tuota pisteitä other-riveiltä.
- Taulukossa 7 haettava kieli (fields[].targetLanguage) pisteytetään vain omassa paikassaan, ei other-riveillä. Jos alalla on targetLevels, vain ne oppimäärät kelpaavat haettavan kielen paikkaan.
- Alan enimmäispisteet ovat taulukon maxPoints, ellei alalla ole omaa maxPoints-arvoa.
- Kynnysehto (fields[].rule) on lista ryhmiä: jokaisen ryhmän pitää täyttyä, ja ryhmä täyttyy, kun yksikin sen ehdoista täyttyy (aine, mahdollinen oppimäärä ja vähimmäisarvosana). noThreshold: true = ei kynnysehtoa. Jos rule puuttuu eikä noThreshold ole tosi, ehto on tarkistettava threshold-tekstistä.
- Rivi, jonka match-ehdossa on from, on voimassa vasta siitä päivästä alkaen (ammattikorkeakoulujen toinen kotimainen kieli 1.8.2027 alkaen).
Pisteet ovat taulukoissa arvosanajärjestyksessä L, E, M, C, B, A. Hylätty koe (I) on nolla pistettä. Laske summat kymmenesosina, jotta liukuluvut eivät pyöristy väärin.
Esimerkkikoodi
todistusvalinta-esimerkki.mjs laskee pisteet ja tarkistaa kynnysehdon pelkästä pisteytystiedostosta. Testimme vertaavat sitä omaan laskuriimme kaikilla aloilla, joten tulokset ovat samat. Koodin saa kopioida ja muokata vapaasti.
import { calculatePoints, checkThreshold } from './todistusvalinta-esimerkki.mjs';
const data = await fetch('https://opiskeluakatemia.fi/avoin-data/todistusvalinnan-pisteytys.json').then((r) => r.json());
const exams = [
{ subject: 'fi-native', level: 'native', grade: 'E' },
{ subject: 'math', level: 'long', grade: 'M' },
{ subject: 'en', level: 'long', grade: 'L' },
{ subject: 'sv', level: 'medium', grade: 'C' },
{ subject: 'history', level: 'real', grade: 'E' },
];
const result = calculatePoints(data, exams, 'kauppatieteet');
// result.points, result.maxPoints, result.counted = [{ exam, slot, points }]
const threshold = checkThreshold(data, exams, 'kauppatieteet');
// 'met' | 'unmet' | 'none' | 'manual'Aineiden tunnisteet ovat kentässä subjects (esimerkiksi fi-native, math, en, sv, biology) ja oppimäärät kentässä levels: native, long, medium, short, real. Alojen tunnisteet ovat kentässä fields; ammattikorkeakoulujen ala on amk.
Valmis kehote tekoälylle
Jos teet laskurin tekoälyn avulla (esimerkiksi Cursor, Claude Code, Lovable, v0 tai ChatGPT), kopioi tämä kehote. Se ohjaa tekoälyn käyttämään oikeita taulukoita sen sijaan, että se arvaisi pisteet.
Todistusvalintalaskuri avoimesta datasta
Suomeksi.
Rakenna todistusvalintalaskuri suomalaiseen korkeakoulujen yhteishakuun. Käytä Opiskeluakatemian avointa dataa äläkä keksi pisteitä tai pisterajoja itse: - Pisteytystaulukot, alat, kynnysehdot ja laskentasäännöt: https://opiskeluakatemia.fi/avoin-data/todistusvalinnan-pisteytys.json - Pisterajat hakukohteittain: https://opiskeluakatemia.fi/avoin-data/korkeakoulujen-pisterajat.json - Laskennan esimerkkitoteutus (calculatePoints, checkThreshold): https://opiskeluakatemia.fi/avoin-data/todistusvalinta-esimerkki.mjs - Ohje: https://opiskeluakatemia.fi/avoin-data/kehittajille Hae tiedostot ja lue pisteytystiedoston rules-kenttä ennen kuin kirjoitat laskennan. Käyttäjä valitsee alan ja syöttää yo-arvosanansa. Näytä kokonaispisteet, mitkä aineet laskettiin mukaan, täyttyykö alan kynnysehto ja miten pisteet vertautuvat hakukohteiden pisterajoihin. Lataa data palvelimella tai käännösvaiheessa ja pidä siitä kopio välimuistissa. Lisää sivun alalaitaan näkyvä lähdemaininta linkkeineen: <a href="https://opiskeluakatemia.fi/avoin-data">Data: Opiskeluakatemia</a> (CC BY 4.0) Kerro myös, että laskuri on epävirallinen ja että viralliset tiedot ovat Opintopolussa.
Todistusvalintalaskuri from open data
In English.
Build a points calculator for Finnish certificate-based university admission (todistusvalintalaskuri). Use Opiskeluakatemia's open data and do not invent points or cutoffs: - Scoring tables, fields, minimum requirements and rules: https://opiskeluakatemia.fi/avoin-data/todistusvalinnan-pisteytys.json - Admission cutoffs per programme: https://opiskeluakatemia.fi/avoin-data/korkeakoulujen-pisterajat.json - Reference implementation (calculatePoints, checkThreshold): https://opiskeluakatemia.fi/avoin-data/todistusvalinta-esimerkki.mjs - Documentation: https://opiskeluakatemia.fi/avoin-data/kehittajille Fetch the files and read the "rules" field of the scoring file before writing the calculation. The user picks a field of study and enters matriculation exam grades. Show the total, which subjects were counted, whether the field's minimum requirement is met and how the points compare with programme cutoffs. Load the data on the server or at build time and cache a copy. Add a visible credit with a link in the footer: <a href="https://opiskeluakatemia.fi/avoin-data">Data: Opiskeluakatemia</a> (CC BY 4.0) State that the calculator is unofficial and that official information is on Opintopolku (opintopolku.fi).
Lisenssi ja lähteen mainitseminen
Data on julkaistu CC BY 4.0 -lisenssillä. Saat käyttää sitä myös kaupallisissa sovelluksissa, kunhan lähde näkyy sovelluksessasi. Lisää esimerkiksi sivun alalaitaan:
<a href="https://opiskeluakatemia.fi/avoin-data">Data: Opiskeluakatemia</a> (CC BY 4.0)Tekstinä: Data: Opiskeluakatemia (opiskeluakatemia.fi/avoin-data), CC BY 4.0. Pisteytystaulukot perustuvat yliopistovalinnat.fi- ja ammattikorkeakouluun.fi-sivustojen julkaisuihin ja pisterajat Opetushallinnon tilastopalvelu Vipuseen. Kooste on epävirallinen, ja virallinen tieto on aina alkuperäisellä julkaisijalla ja Opintopolussa. Kerro se myös omille käyttäjillesi. Jos löydät virheen, kerro siitä yhteydenottolomakkeella.
In English: open data for a Finnish admission points calculator
Finnish universities and universities of applied sciences admit a large share of their students on matriculation exam grades (todistusvalinta). This page gives everything needed to build a points calculator (todistusvalintalaskuri) as open data: the 11 university scoring tables valid from 2026, the AMK table, fields of study with their minimum requirements, and last year's admission cutoffs per programme. No API key, CORS enabled, stable URLs, licence CC BY 4.0.
- Scoring tables, fields and rules (JSON): read the
rulesanddescriptionEnfields first. - Admission cutoffs per programme (JSON), also as CSV.
- Reference implementation (ES module, no dependencies):
calculatePoints(data, exams, fieldId)andcheckThreshold(data, exams, fieldId), tested against our own calculator.
Attribution is required: show Data: Opiskeluakatemia (opiskeluakatemia.fi/avoin-data), CC BY 4.0 with a link to https://opiskeluakatemia.fi/avoin-data in your app. The data is an unofficial compilation; official information is published by the universities and on Opintopolku. Our own calculator built on the same data is at opiskeluakatemia.fi/todistusvalintalaskuri.
Muut tiedostot ja sarakkeiden kuvaukset: avoin data. Pisterajat sivuina: korkeakoulujen pisterajat ja yo-kokeiden pisterajat.