Help · manual

Statistics, templates & search

Revenue and participant statistics, your own statistics templates and the global search. These texts sit right next to the fields inside Kursimple – here they are to read through.

The statistics on participants and revenue in Kursimple
The statistics on participants and revenue. View at full size

Statistics

Statistics

Your figures at a glance: revenue per month (ordered, invoiced, paid) as well as where your participants come from and how old they are. At the bottom you download the tables as CSV or switch to the course statistics of a year.

The three revenue tables deliberately differ: “Order revenue” = what customers have ordered (by order date). “Invoice revenue” = what you have invoiced (by invoice date, credit notes deducted). “Payment revenue” = what was actually recorded as payment received (by payment date). Large differences between invoice and payment revenue point to outstanding receivables.

All amounts are gross; the VAT included is shown next to them. Cancelled orders are not counted.

Order revenue by period

Sum of orders per month by order date – shows when your customers book (seasonal pattern). Without cancelled orders, after deduction of vouchers.

The tax rate in the column heading is the average of the rates used; the “VAT” column shows the tax portion included.

Invoice revenue by period

Sum of closed invoices per month by invoice date. Credit notes reduce the sum. This is the figure that should match your bookkeeping.

Drafts are not counted – close invoices promptly so that the month is complete.

Payment revenue by period

Sum of recorded payments received per month by payment date – when money actually came in.

The figure is only as good as your payment recording: record payments in the invoices (or by clicking “open” in the invoice list), otherwise the month stays too low.

Course participants by postcode

Which postcode areas your participants come from – a basis for advertising, flyer distribution and choosing new locations.

Participant places are counted by the customer's postcode. “N/A” = customers without a postcode.

Course participants by age

Age distribution of your participants – helps with programme planning (children's, adult and senior offerings).

Only participants with a recorded date of birth are counted; “N/A” stands for the rest. Whether dates of birth are recorded is determined by the variable PARTICIPANTS_DATEOFBIRTH.

Export as CSV

Downloads the revenue tables as a CSV file – to open in Excel or to pass on to bookkeeping.

The columns correspond to the tables on this page.

Custom statistics (templates)

Opens the statistics templates: there you put together statistics with your own columns, period and selection and download them as CSV for Excel.

Admins create the templates; administration can download them.

Course statistics

Opens the course statistics of a year: occupancy, participants and revenue per course. The year buttons choose the year; “old” shows all past years.

This is how you see which courses are running well and which are not – a basis for the next programme.

Month

The calendar month of the evaluation, in chronological order.

A month without a row had no revenue.

Revenue incl. VAT

Order value of the month, gross – after vouchers, without cancelled orders.

The order date is decisive.

VAT

The VAT portion included in the sum, calculated from the tax rates of the items.

For tax-exempt educational services the portion is correspondingly small.

Invoice total incl. VAT

Sum of the invoices closed in the month, gross; credit notes are deducted.

The invoice date is decisive.

Payment total incl. VAT

Sum of the payments received that were recorded in the month.

The payment date from the invoice is decisive.

Postcode & city

Postcode and city of the customers, grouped by postcode.

“N/A” = without postcode.

Number of course participants

How many participant places fall into this group – across all courses.

A person with three courses is counted three times.

Age

Age of the participants in years at the time of the evaluation.

Only with a recorded date of birth.

Search results

Search results

The hits of the search from the header – across courses, sessions, customers, orders, speakers and locations. Each hit names its type; a click opens the record.

Titles, names, numbers and email addresses are searched. If you find nothing, try a shorter term or use the filters of the respective list.

Statistics templates

Statistics templates

Here you put together your own statistics: which columns, which period, which courses or locations. You can download each template again as CSV at any time – Excel opens it with a double-click with separated columns.

Templates belong to your provider and are visible only here. Admins create and change them; staff with the role “Administration” can export them.

The CSV is built for an Excel set to German (semicolon, decimal comma). In an Excel set to English everything ends up in one column – “Data → From Text/CSV” helps there.

Name

The name of the template, with its description below. Each name occurs only once for you.

You change the name in the editor. The description helps others understand what the template is meant for.

A row is …

What a row of the statistics is: a course session (“Session”), an individual session per speaker, a participant of a booking (“Participation”) or an order. This determines which fields are available. “Evaluation” means: the rows are summarised and counted.

You set the row type when creating; you can change it in the editor, and unsuitable columns then drop out.

File name

Pattern for the name of the downloaded file. Placeholders such as {jahr} are replaced on export.

The editor explains the placeholders at the field “File name”. “.csv” is always added automatically.

Actions

“Export” opens the template for downloading. Admins can also edit, copy or delete it.

Copying is worthwhile if you need a similar statistic – you then edit the copy straight away.

Examples to adopt

Ready-made templates as a starting point. “adopt” opens them in the editor; only with “save” does it become your own template, which you can change as you like.

Examples do not change when you edit your template – you can adopt each example as often as you like.

With the memberships module, examples for members are added: member list, members per membership, joins and leavers per month, age structure, and courses with members and non-members.

Courses with hours

List per course session with course number, title, start and end date, number of individual sessions, hours per session and in total, and the instructors – e.g. for proof of hours or funding applications.

One row per course session whose start falls in the period (default: current year). This is what the CSV looks like (sample data):

Course numberCourse titleStart dateEnd dateNumber of sessionsDuration of one session in hoursDuration of one session in decimal hoursDuration of all sessionsDuration of all sessions decimalInstructor
K-101Pottery for children03.03.202624.03.202641:301,56:006Anna Ton
K-102Evening yoga05.03.202605.03.202612:0022:002Ben Berg, Clara Kern

If the individual sessions differ in length, a range with average is shown there, e.g. “1:30–2:00 (Ø 1:45)”. Several instructors appear comma-separated in one row.

Individual sessions per instructor

List per individual session and instructor with date, time, course, hours and number of participants – the basis for fee and hours lists. Default: the last month.

One row per individual session and instructor, sorted by date and time. This is what the CSV looks like (sample data):

Start dateEnd dateStart timeEnd timeCourse titleNumber of sessionsHoursNumber of participantsInstructor
03.03.202603.03.202616:0017:30Pottery for children11,58Anna Ton
05.03.202605.03.202619:0021:00Evening yoga1212Ben Berg
05.03.202605.03.202619:0021:00Evening yoga1212Clara Kern

If two instructors lead a session together, each gets their own row with the full hours. A session without an instructor appears once with an empty “Instructor” column.

Participants with place of residence

List per participation with course, start date, name and age of the participant as well as postcode and city of the customer – e.g. for subsidies that ask for the place of residence.

One row per participant of a booking whose course starts in the period (default: current year). This is what the CSV looks like (sample data):

Course numberCourse titleStart dateFirst nameLast nameAgePostcodeCity
K-101Pottery for children03.03.2026KimOhne749832Freren
K-101Pottery for children03.03.2026LeaLang948499Salzbergen

The age applies at course start. Postcode and city are those of the customer from the order – for children usually those of the parents. The postcode is exported as text so that a leading zero is preserved.

Participants per postcode

Evaluation: how many participants came from which postcode (postcode of the customer from the order), with a total row.

Every participation counts – one child in three courses is three participants. This is what the CSV looks like (sample data):

PostcodeParticipants
484996
498089
4983214
not specified2
Total31

Instead of single postcodes you can create your own ranges in the editor, e.g. 49808 to 49811 as “Lingen”. Postcodes outside all ranges then appear as “other”.

Orders per city

Evaluation: how many orders came from which city and what total they make – including orders without participants such as articles or vouchers.

Orders whose booking date falls in the period are counted (default: current year); the cities with the most orders are at the top. This is what the CSV looks like (sample data):

CityOrdersTotal
Freren423150,00
Lingen272040,00
Salzbergen11795,00
Total805985,00

The total applies after vouchers. Different spellings such as “Lingen” and “Lingen (Ems)” you merge in the editor under “Merge values”.

Participants per course and age group

Evaluation: per course, how many participants were in which age group (age at course start).

Each participation counts individually. This is what the CSV looks like (sample data):

CourseAge groupParticipants
Pottery for children6–10 years11
Pottery for children11–14 years4
Evening yoga27–64 years18
Evening yoga65 years and older3
Total36

You change the age groups in the editor. Participants without a date of birth appear as “not specified”.

Participants per year of birth

Evaluation: how many participants from which year of birth were in the courses.

Each participation counts individually. This is what the CSV looks like (sample data):

Year of birthParticipants
19804
20156
20179
not specified1
Total20

If you prefer age groups, use the example “Participants per course and age group”.

Member list

Only with the memberships module. List per member and membership with membership number, name, place of residence, “Member since” and years of membership.

Included is anyone who was a member in the period (default: current month). For a list on a cut-off date, choose a single day as the period when exporting. This is what the CSV looks like (sample data):

MembershipMembership numberLast nameFirst namePostcodeCityMember sinceYears of membership
Supporters' association23MusterMia49808Lingen15.03.20242
Supporters' association17OhneKim49832Freren01.01.20206

The years of membership apply at the end of the period. Anyone in two memberships appears twice. Bank details are never included.

Members per membership

Only with the memberships module. Evaluation: how many members each membership had in the period and how long they have been members on average.

Every member who was a member in the period is counted (default: current year). This is what the CSV looks like (sample data):

MembershipMembersØ Years of membership
Choir245,2
Supporters' association1187,8
Total1427,4

The years of membership apply at the end of the period. A member in two memberships counts in both.

Joins per month

Only with the memberships module. Evaluation: how many members joined per month and membership (“Member since” in the period).

The default is the current year. This is what the CSV looks like (sample data):

MonthMembershipJoins
January 2026Choir2
January 2026Supporters' association9
February 2026Supporters' association3
Total14

Months without joins do not appear. The leavers are shown by the example “Leavers per month”.

Leavers per month

Only with the memberships module. Evaluation: how many memberships ended per month (end in the period).

The default is the current year. This is what the CSV looks like (sample data):

MonthMembershipLeavers
March 2026Supporters' association2
June 2026Choir1
Total3

A future end that has already been entered also counts if it falls in the period – so you can already see who is leaving at the end of the year.

Age structure of the members

Only with the memberships module. Evaluation: per membership, how many members are in which age group.

The age applies at the end of the period (default: current year). This is what the CSV looks like (sample data):

MembershipAge groupMembers
Choir27–40 years6
Choir41–64 years15
Supporters' associationunder 18 years12
Supporters' association41–64 years58
Supporters' associationnot specified4
Total95

You change the age groups in the editor. Members without a date of birth appear as “not specified”.

Courses with members and non-members

Only with the memberships module. List per course session with the number of participants, of which members and non-members – e.g. for subsidy applications.

One row per course session whose start falls in the period (default: current year). This is what the CSV looks like (sample data):

Course numberCourse titleStart dateParticipantsof which membersof which non-members
K-101Pottery for children03.03.2026853
K-102Evening yoga05.03.20261248

A member is anyone whose record has an ongoing membership at course start. Participants without their own record count as non-members, cancelled participations not at all.

New template

Creates an empty template. You choose what a row is and click your columns together.

The quickest way is with an example: adopt, adjust columns, save.

Edit statistics template

Edit statistics template

Define what a row is, which columns the statistics have, which period applies and which courses, speakers, locations, rooms or customers are included. Below you immediately see a preview.

Nothing is saved before you click “save”. The preview shows the first 20 rows with your current settings.

Name of the template

Under this name you find the template in the list. It must be unique for you.

If the name already exists, saving reports this at the field – then choose another one.

A row is …

“Session”: one row per course session – for hours, occupancy, instructors. “Individual session per speaker”: one row per individual session and speaker – for hours and fee lists. “Participation”: one row per participant of a booking – for age, place of residence, customers. “Order”: one row per order – also without participants, such as articles and vouchers. “Learning participation”: one row per e-learning participation – with status and exam result.

If you change the row type, columns that do not exist there disappear. All fields of a session are also available for “Individual session per speaker” and “Participation”.

With “Individual session per speaker”, every speaker of a course gets their own row with the full hours of the individual session. A session without a speaker appears once with an empty speaker.

With “Learning participation” there are no locations and rooms; “Speaker” selects the instructors of the learning content, “Exclude cancelled” leaves out blocked accesses.

With the memberships module: “Member” gives one row per member and membership. With “Participation”, “Member at course start”, the memberships and the membership number are then available for participant and customer, with “Order” the same for the customer as of the booking date, and for the session “Participants of which members” and “of which non-members”. Participants without a record count as non-members.

File name

This is what the downloaded file is called. Placeholders: {vorlage}, {mandant}, {von}, {bis}, {jahr}, {datum}. “.csv” is added automatically.

Example: “Courses-hours-{jahr}” becomes “Courses-hours-2026.csv”. {von} and {bis} appear in the name as year-month-day so that the files sort correctly. Umlauts are transcribed (ä → ae), spaces and special characters become hyphens.

Type: list or evaluation

“List” outputs every row individually, with the columns you choose. “Evaluation” summarises the rows and counts them – for example how many participants came from which postcode or how many orders from which city.

With an evaluation you define what to group by (up to three fields) and what comes out per group (key figures such as count or sum). Each row counts individually: a child in three courses, at three sessions or three times in one session is three participants.

If you switch back to the list, your columns are still there.

Columns

Click a field on the left to append it as a column. On the right you give each column the heading that should appear in the file and drag it into the right order by the handle.

A tick on the left shows that a field is already used as a column. The search field filters the list.

On duration: “h:min” appears as 1:30 in the file, “decimal” as 1,5 – Excel can calculate with both. If the individual sessions of a course differ in length, “Duration of one session” shows the range with the average, e.g. “1:30–2:00 (Ø 1:33)”. Individual sessions with a duration of 0 or over 24 hours count towards the number but not towards the duration; the preview names them.

as text

Excel cuts off leading zeros (postcode 01234 becomes 1234). With “as text” the value stays exactly as it is – useful for postcodes, phone numbers or customer numbers.

In the file the value then appears as ="01234". Excel displays 01234 but does not calculate with the column – for numbers you want to calculate with, leave the tick off.

Group by

Choose a field and click “Add group”. Each group becomes a column; one row is created per combination of values. With the level you define how fine: each value individually, per year/quarter/month (date), ranges from – to (number, postcode) or merge values (text).

Examples: “Postcode” each value individually counts per postcode. “Postcode” with ranges, e.g. 49808 to 49811 “Lingen”, counts per range – postcodes outside all ranges appear under “other”. “Date of birth” per year gives the birth cohort, “Age at course start” with ranges gives the age groups.

Text is counted together regardless of upper and lower case and double spaces; the most frequent spelling is displayed. Different spellings of the same city (“Lingen (Ems)”, “Lingen Ems”) you combine under one name with “Merge values”. Empty values appear as “not specified” at the end.

You change the order of the groups by the handle. Without a group the evaluation consists of a single row over everything.

Key figures

What is counted or calculated per group: “Count” counts the rows (for participation the participants, for order the orders). In addition there is the number of distinct values (e.g. distinct customers), the sum and the average of a field.

Each key figure becomes a column; you can change the heading. Sum and average work with numbers, amounts and durations; empty values do not count there.

“Append total row” adds a row at the end over all groups. “Number of distinct values” is counted over everything there – a customer in two groups counts once in the total.

Period

Which period goes into the statistics. Relative entries such as “current year” always apply from the day of the export – so the template is also right next year.

With “changeable on export” the period of the template is only a suggestion that can be adjusted when downloading.

Which date counts

“Session start”: the session begins in the period. “Session runs in the period”: it overlaps it, even if it began earlier. “Individual session”: every individual session counts by its own date. “Booking date” (only for participation): booked in the period.

For an annual report you usually take “Session start”; for courses that run across the turn of the year, “Session runs in the period” – then they count in both years.

Period

Month, quarter, half-year, year, school year (01.08.–31.07.), the last 12 months, a fixed period with from and to – or without a period.

“from” and “to” only count for the fixed period. Both days belong fully to it.

Period changeable on export

With the tick a different period can be chosen on export; the template only provides the default. Without the tick the period of the template always applies.

Handy if the same template is needed sometimes for the half-year and sometimes for the whole year.

Selection

Restricts the statistics to certain courses, course types, speakers, locations, rooms or customers. An empty field means “all”.

All lists contain only your own courses, speakers, locations and rooms.

Course types

Restricts to certain course types, e.g. only courses, only subscriptions or courses and articles together. Empty means “all course types”.

The available choices are the course types you have: course, flexible date selection, subscription, article, course without session, e-learning and requested date (bookings with a requested date via the interface).

For “Order”, orders with at least one item of this course type count; for “Member” the course type has no effect.

Customers

Type at least two letters of name, company or email and choose the customer. For “Session” the sessions they booked count; for “Participation” their bookings.

The search finds only customers of your provider. Family members without their own record are not included – then search for the customer who made the booking.

Do not count cancelled

With the tick, cancelled participants, cancelled bookings and waiting-list places are missing – as on the participant list. Without the tick they are included; the “Status” column then shows “cancelled”.

Counted as on the participant list: anyone who unsubscribed before the end of a session (e.g. for subscriptions) no longer counts for that session.

Empty fields

If you choose nothing in a field, it does not restrict. Several entries in one field mean “one of them”, several fields together “all conditions”.

Example: two courses and one location give the sessions of these two courses at this location.

Selection changeable on export

With the tick a different selection can be made on export. Without the tick the selection of the template always applies.

This way administration can download the same template e.g. for each location individually.

Sorting

By which field the rows are sorted. Without a setting by session start, for participations within a session by last name. Empty values are always at the end.

“descending” reverses the order, e.g. for the newest sessions first.

With an evaluation you sort by the groups (A–Z or the ranges in your order) or by the first key figure, e.g. the cities with the most orders first. “other” and “not specified” are always at the end.

Preview

The first 20 rows with your current settings, the total number and the file name. Notes, e.g. on sessions with implausible duration, appear above.

The preview updates by itself after every change. It shows the values as they appear in the file.

Save

“save” stores the template and stays in the editor. “save and export” then goes straight to downloading.

If something is missing (name, columns, date for the fixed period), the form shows what to do – it is only saved when everything is correct.

Export statistics

Export statistics

Check period and selection, look at the preview and download the CSV. What the template fixes is shown here for information only.

Excel opens the file with a double-click with separated columns, umlauts and numbers you can calculate with. Postcodes and similar columns keep their leading zeros if the template outputs them “as text”.

Period

Pre-filled from the template. If it is marked as changeable there, you can change it here for this export – the template stays as it is.

If the period is fixed in the template, it is shown here for information only.

Which date counts

“Session start”: the session begins in the period. “Session runs in the period”: it overlaps it, even if it began earlier. “Individual session”: every individual session counts by its own date. “Booking date” (only for participation): booked in the period.

For an annual report you usually take “Session start”; for courses that run across the turn of the year, “Session runs in the period” – then they count in both years.

Period

Month, quarter, half-year, year, school year (01.08.–31.07.), the last 12 months, a fixed period with from and to – or without a period.

“from” and “to” only count for the fixed period. Both days belong fully to it.

Selection

Pre-filled from the template. If it is marked as changeable there, you restrict here for this export to courses, course types, speakers, locations, rooms or customers.

If the selection is fixed in the template, it applies unchanged.

Course types

Restricts to certain course types, e.g. only courses, only subscriptions or courses and articles together. Empty means “all course types”.

The available choices are the course types you have: course, flexible date selection, subscription, article, course without session, e-learning and requested date (bookings with a requested date via the interface).

For “Order”, orders with at least one item of this course type count; for “Member” the course type has no effect.

Customers

Type at least two letters of name, company or email and choose the customer. For “Session” the sessions they booked count; for “Participation” their bookings.

The search finds only customers of your provider. Family members without their own record are not included – then search for the customer who made the booking.

Do not count cancelled

With the tick, cancelled participants, cancelled bookings and waiting-list places are missing – as on the participant list. Without the tick they are included; the “Status” column then shows “cancelled”.

Counted as on the participant list: anyone who unsubscribed before the end of a session (e.g. for subscriptions) no longer counts for that session.

Empty fields

If you choose nothing in a field, it does not restrict. Several entries in one field mean “one of them”, several fields together “all conditions”.

Example: two courses and one location give the sessions of these two courses at this location.

Preview

The first 20 rows, the total number and the file name – it updates as soon as you change something. Notes, e.g. on sessions with implausible duration, appear above.

A note about an implausible duration means: an individual session ends before or at its start or lasts more than 24 hours. Correct the times in the course, then the duration is right.

Download CSV

Downloads the statistics with all rows as a CSV file.

The file is named as defined in the template, with the placeholders replaced. It contains all rows, not just those of the preview.

Rather see it than read about it?

In 30 minutes we will show you Kursimple with your own course programme. Or set up your own test system in 30 seconds – both free and without obligation.

Questions? +49 5931 990 99 10 · Mon–Thu 8:30–17:30, Fri 8:00–14:00 (CET)
Try it free