For instructors

Teach with StatsCapybara

Ninety-seven interactive lessons and a shelf of tools, free and open to anyone. If you teach statistics or research methods, everything here is yours to use in a course: link it, embed it, print it, and assign from it. This page shows how.

One link is a semester of students. Drop a lesson URL into your syllabus or LMS and your class gets a visual explanation plus a hands-on visualization, with nothing to install and no sign-up. You never have to point them anywhere but the exact page they need.

What your students see

No accounts. No login wall. No email capture. A student opens a lesson and starts reading and playing with it in the same second. That is the whole experience, and it is deliberate.

Progress lives only in the student's own browser. Finished lessons sit quieter in the lists, each course carries a completion ring, and the homepage remembers where to pick up, all from localStorage on their machine. None of it is sent anywhere, so there is nothing for you to administer and nothing for them to worry about. Clearing browser data resets it; using a different device starts fresh. It is a study aid, not a gradebook.

The site does count page views anonymously with Google Analytics, configured to set no cookie, and logs an anonymous note whenever the search, the quiz or an embed gets used. That is how I learn which lessons get read and which tools are worth maintaining. No student is identified and no coursework data exists to collect, so assigning StatsCapybara needs no data-processing paperwork. The privacy page spells all of it out.

The site works offline once visited, prints cleanly, and reads well on a phone, so it fits however your students actually study.

Link lessons from your syllabus or LMS

Every lesson has a clean, permanent URL, so you can point at exactly the right section for a given week:

  • A lesson: statscapybara.com/stats-1/central-limit-theorem/
  • A calculator: statscapybara.com/power.html for the sample-size question that comes up in every methods class.
  • The test chooser: statscapybara.com/which-test.html when students ask "which test do I run?"

Paste those into Canvas, Moodle, Blackboard, a slide, or a printed handout. They resolve the same everywhere because the whole site uses relative paths and plain HTML.

Printable handouts and posters

Every lesson prints as a clean handout: the prose, the frozen visualization, the worked APA example, and the code, with all the site chrome stripped away. Students hit Ctrl/ P on any lesson and get study notes. The formula sheet prints the same way.

Three one-page posters are built to pin up or hand out, and each fits a single sheet at A4 and US Letter:

If your exam is on paper with printed tables, the tables page now carries them: a standard normal table, a t table with confidence levels along the foot, and a χ² table. Print all three puts one on each sheet, generated from the same exact functions the site's calculators use, so the handout and the answer key cannot disagree. The same page has a ten-question lookup drill that accepts the table's rounding as well as the exact value, which is the distinction students find hardest to trust.

Assignments on reproducible datasets

The practice datasets are real CSVs with a short backstory, a suggested exercise, and a worked solution. They are seeded, so every student who downloads a file gets the identical numbers. A whole class can run the same analysis and land on the same answer, which makes marking straightforward and makes "my results are different" a real conversation rather than a mystery.

Point students at a dataset for homework, then have them check their output against the lesson's SPSS/JASP walkthrough and APA example. The numbers were all verified against professional software.

A ready-made semester project

If your course ends in a mini-project rather than an exam, One Study, Start to Finish is the model answer you can hand out or withhold. It carries memory-2x2.csv through every stage a project report has to cover: the research question and its operationalization, the design and a power analysis, the data checks, the assumption checks, a two-way ANOVA with simple effects, effect sizes with confidence intervals, the APA results paragraph, and the limitations. Every number in it is reproducible from the CSV.

Two things in it are hard to teach from a clean example and are deliberately left messy. The study recruited 25 per cell against a plan that asked for 32, so the guide states the shortfall and puts it in the limitations rather than hiding it. And a boxplot rule flags four points in one cell that should not be deleted, where deleting them would make the hypothesis look stronger. Both make good seminar discussions on their own, with or without the rest of the guide. Assign a different dataset from the same page and students cannot copy the numbers, only the structure.

Problem sheets you can hand out

The practice problems page is the pencil-and-calculator half of the same idea: exam-style scenarios with numbers small enough to work by hand, each followed by a full solution that shows the formula, the substitution, the arithmetic and the reporting sentence. Every value in every step was verified before it shipped.

Two print buttons at the top of that page make it a ready-made handout. Print problems suppresses every solution, whatever a student has left open on screen, so you get a clean problem sheet. Print with solutions forces all of them open for a marking key. Problems are tagged warm-up, exam-level or stretch, so you can pull a seminar's worth from one course without reading all fifty-nine. The last set is different in kind: six studies, figures and results sentences with something wrong in them, and no arithmetic to do. They work well as a seminar discussion or a take-home critique exercise. The Exam-style set is the other one worth knowing about: eight multi-part questions over §1.1 to §1.12, written to be worked with a calculator and the printed tables, which makes it a ready revision sheet for a midterm.

Revision: quiz, mock exams and flashcards

For review weeks, the quiz runs two ways. Practice mode gives instant feedback one question at a time. Exam mode sets a mock paper over whichever courses you choose, at 10, 20 or 40 questions, then marks it at the end and hands back every miss with an explanation and a link to the course to revisit. There is an optional timer, and it counts up rather than down. The glossary flashcards run a spaced-repetition drill over every term the course defines. All of it is self-paced and, like everything else, keeps its state in the student's browser.

The exam results screen prints cleanly, so a student can hand you a marked mock paper, or keep it as a revision list.

Set a mock exam over the sections you have taught

A midterm rarely covers a whole course, so exam scope is a course plus a span of its sections. Under each course in the scope picker sits a from and to pair, filled from that course's own section list, and narrowing it narrows the paper. Stats 1 and Stats 2 carry section tags on every question today; a course without them has no range control and comes in whole, which the line under the picker says out loud.

The same scope fits in a link, so you can post one URL and every student sits the same paper. It opens exam mode with the scope and the length already set, and leaves the Start button to them.

A mock exam in a link
https://statscapybara.com/quiz.html?exam=stats-1&from=1.1&to=1.12&n=20

exam= takes one course slug, several separated by commas, or all. from= and to= take section numbers and apply when the link names a single course; either can be given on its own, and reversed ends are read the sensible way round. n= is 10, 20 or 40. Anything unrecognized is ignored and the page opens on its ordinary start screen, so a typo in front of a class costs nothing.

Embed a live visualization

Any lesson can render as a bare interactive widget by adding ?embed=1 to its URL. That hides the navigation, sidebar, prose, and footer, leaving the eyebrow, the title, and the interactive itself with its controls. It is meant for an <iframe> in your slides, notes, or LMS page.

Copy this and change the lesson path to whatever you want to show:

Embed code
<iframe
  src="https://statscapybara.com/stats-1/central-limit-theorem/?embed=1"
  width="100%" height="640" loading="lazy"
  style="border:1px solid #e2e8f0;border-radius:14px"
  title="Central Limit Theorem — StatsCapybara"></iframe>

The widget carries a small footer linking back to the full lesson, which opens in the top window rather than inside your frame. The lesson's canonical URL still points at the full page, so an embed never competes with the real lesson in search.

Embed a specific setting, not just a lesson

A plain embed opens at the lesson's default configuration, which is rarely the one your slide is about. Several lessons accept extra parameters in the URL, so the widget arrives already set the way you want it: the central limit theorem at n = 50, a correlation of exactly .30, a signal-detection observer with a conservative criterion. Add them alongside ?embed=1, in any order.

Embed code with a preset
<iframe
  src="https://statscapybara.com/stats-1/central-limit-theorem/?embed=1&n=50&pop=skewed"
  width="100%" height="640" loading="lazy"
  style="border:1px solid #e2e8f0;border-radius:14px"
  title="Central Limit Theorem at n = 50 — StatsCapybara"></iframe>

The same parameters work on the full lesson page too, so you can put a configured link straight in your slides or notes without embedding anything. Anything the lesson does not recognize is ignored, and a typo just loads the ordinary default; nothing breaks in front of a class.

LessonParametersExample
Describing Data data up to 200 numbers · five 1–5 · slowest 31–70 · step 1·2·3·4 · spread 2–12 ?five=5&slowest=60
Z-Scores & the Normal Distribution mu · sigma > 0 · x · x2 · shade left·right·between ?mu=164&sigma=6&x=170
Probability Basics prev .001–.500 · sens .50–1 · spec .50–1 ?prev=0.20&sens=0.90&spec=0.90
The Binomial Distribution n 1–40 · p .05–.95 · k 0–n ?n=8&p=0.25&k=5
Sampling Distributions shape skewed·uniform·bimodal · n 2–50 · stat mean·median ?shape=skewed&stat=median
Central Limit Theorem n 1–50 · pop skewed·uniform·bimodal ?n=50&pop=skewed
Confidence Intervals n 5–100 · level 90·95·99 · xbar · sigma > 0 ?xbar=222&sigma=5&n=4&level=95
Hypothesis Testing Logic z −4–4 · tail two·right·left · alpha .10·.05·.01 · mu0 · sigma > 0 · n 2–60 · xbar · mu1 22.00–23.20 ?mu0=227&sigma=5&n=4&xbar=222&tail=two
One-Sample & Paired t-Tests df 1–60 · t 0–5 (0 hides the marker) ?df=14&t=2.60
Independent Samples t-Test gap 0–25 · sd 3–25 · n 5–80 · df cons·welch·pool · sep 0–16 ?gap=8&n=20&df=cons
Inference for Proportions n 20–600 · x 0–n · p0 .05–.95 in steps of .05 · n1 x1 n2 x2 (any one of the four switches to the two-proportion view) ?n1=250&x1=205&n2=200&x2=148
Chi-Square Tests t a whole table of counts, commas within a row and semicolons between rows, 2–4 rows by 2–4 columns ?t=70,32,18;30,28,22
Correlation r −1–1 · line 1·0 · ellipse 1·0 · step 1·2·3·4 · plot 1–10 · data 3–100 x:y pairs ?r=0.3&ellipse=1
Simple Linear Regression b0 0–10 · b1 −1.5–2 · mode lines·squares · resid 1·0 · data 3–100 x:y pairs ?b1=0&mode=squares
Non-Parametric Alternatives outlier 40–100 · tab mw·wx·kw·fr·sp · g group data for the mw, wx and kw tabs, the same shape as §2.2 · data 3–30 x:y pairs for the sp tab · alpha .05·.01 · tails 2·1 ?tab=mw&g=11,14,16,18,22,25;20,27,30,33,36,40&alpha=.01
One-Way ANOVA g a whole dataset, commas inside a group and semicolons between groups, 2–4 groups of 2–10 numbers · step 1–8 ?g=15,14,12,11;20,18,16,14;21,17,19,19;25,24,22,21&step=5
Post-Hoc Tests g a whole dataset, the same shape as §2.2, 2–5 groups of 2–12 numbers · c one coefficient per group, summing to zero · mode one·pairs · alpha .1·.05·.01 ?c=1,-0.333333,-0.333333,-0.333333
Factorial ANOVA (Two-Way) cells the four cell means 0–100, in reading order a1b1, a1b2, a2b1, a2b2 · n 2–10 per cell and b 0–20 for the size of B’s effect, both on the variance widget · g a whole 2 × 2 as four cells of equal size, in that same order ?cells=84,64,62,58
Logistic Regression x0 20–80 · b1 0.02–0.50 ?x0=50&b1=0.5
Bayesian Thinking prior 0.05–0.95 · conf 2–80 · n 0–200 · obs 0–1 ?prior=0.5&conf=60&obs=0.8
Psychometric Functions family logistic·gauss·weibull · compare on·off · trials 10–200 · sigma 40–160 · shift −150–150 · mult 0.5–2 ?family=weibull&trials=200
Signal Detection Theory d 0–3 · c −2.5–2.5 ?d=2&c=0.75

Values outside a listed range are pulled back to the nearest one the control can actually reach, and a value between two slider steps snaps to the nearer step. What you get is always a state a student could have reached by hand.

A page with more than one interactive shares its parameter names across them, which is deliberate: n means sample size wherever it appears, so one link configures the whole page. Each control still clamps to its own range, so ?n=4 lands the coverage playground on its minimum of 5 while the Interval Builder beside it takes the 4. Two pairings are worth knowing on §1.12: mu0, sigma, n and xbar drive the numbers-to-z panel and hand the resulting statistic to the p-value explorer below it, and mu1, n and alpha set the Two Curves power picture at the foot of the page. §1.14 is the one exception to the shared-name habit: its two interactives both have a gap slider, but they run on different scales, so the Tug-of-War takes gap and the overlapping-intervals block takes sep.

Put your own numbers in the link

Four surfaces read a ?data= parameter, so a lecture's own batch of numbers can go into a live playground without anyone typing it in front of a class. Two of them take a single column: the Mean vs. Median Playground in §1.3, where the values become the draggable dots and the axis rebuilds around them, and the Descriptives calculator, which fills its box and calculates. Separate those numbers with commas, up to 200 of them.

The other two take pairs, written x:y and separated by commas, up to 100 of them: the Correlation Explorer in §1.17, which replaces its simulated cloud with your points and rebuilds both axes around them, and the Least-Squares Playground in §1.18, which does the same and also rescales the two slope sliders so the least-squares line is reachable. Add &resid=1 there to open the residual plot underneath. In §1.17 the points stay until somebody moves the target-correlation slider or asks for a new cloud, which returns the widget to simulated data; in §1.18 the "New data" button does the same.

All four follow one rule about bad input: anything that is not a plain number, and the whole parameter is ignored, so a mangled paste still loads the ordinary page rather than half a dataset. Pairs additionally need at least three of them, and both columns have to vary, since a correlation and a slope are undefined otherwise.

Three more surfaces take groups rather than a single batch, under their own name. Build the ANOVA Table in §2.2 reads ?g=, where commas separate the values inside a group and semicolons separate the groups, up to four groups of ten numbers. That is the same shape the contingency builder in §1.16 uses for ?t=, and it is the convention every group-data surface on the site uses, so a class's own three or four conditions can go straight into the table with the rest of the lecture's links. Pair it with ?step= to open on the sums of squares rather than on the finished table, or switch the widget to exam mode and let it blank four cells for the room to fill in.

Where the Variance Goes in §2.4 reads ?g= as a 2 × 2: exactly four cells, in the order a1b1, a1b2, a2b1, a2b2, and all four the same size, because an unbalanced factorial design has no clean four-way split of the total to draw. Loading one sets the effect-of-B slider to zero, so what arrives is what shows. The interaction plot above it takes ?cells= instead, which is four cell means rather than four columns of data, so a lecture that has only the means on a slide can still put them on the screen live.

Contrast Builder in §2.3 reads the same ?g=, up to five groups of twelve, and adds ?c= for the contrast itself: one plain number per group, separated by commas, rejected outright unless there is one for every group and they sum to zero. So the week’s dataset and the week’s planned comparison arrive together, and ?mode=pairs switches the same numbers to the all-pairs panel where the plain and the Bonferroni verdicts sit side by side. Fractions have to be written as decimals, and the widget allows for the rounding that forces: -0.333333 is accepted as a third.

A dataset in a URL
https://statscapybara.com/descriptives.html?quart=textbook&data=22,22,26,26,26,27,27,28.5,28.5,29,34,34,36,39,46,47,50,71

https://statscapybara.com/stats-1/describing-data/?data=22,22,26,26,26,27,27,28.5,28.5,29,34,34,36,39,46,47,50,71

https://statscapybara.com/stats-1/correlation/?data=2:45,4:34,6:40,8:30,10:31

https://statscapybara.com/stats-1/simple-linear-regression/?data=1:12,2:20,3:26,4:30,5:32,6:32,7:30,8:26&resid=1

Those eighteen numbers are the hot-dog contest file from the practice datasets, chosen because they are small enough to work by hand and lopsided enough to be worth working. The calculator also takes ?quart= as textbook, spss or r, which is the fastest way to show a class that a paper exam and a statistics package do not compute Q1 the same way. The two paired links are the datasets behind problem 23 and problem 25: five wards with a negative correlation, and eight fertilizer doses whose residual plot arches even though R² reads .500.

Put it on the projector

A lecture hall is not an iframe. Adding ?present=1 to a lesson URL gives you the same bare widget at projector scale: larger readouts, larger control labels and tab strips, and a wider column so a 1280 × 720 room is actually used. The download button goes, since nobody saves a PNG mid-lecture, and the back-link stays, so one click opens the full lesson when a question needs the prose.

It composes with everything above. A preset still arrives set, and ?embed=1 beside it is fine if you want the scaled widget inside a frame. On a narrow screen the scaling switches itself off, so checking the link on your phone the night before shows you the ordinary lesson widget rather than four words to a line.

A configured lesson, sized for the room
https://statscapybara.com/stats-1/hypothesis-testing-logic/?present=1&mu0=227&sigma=5&n=4&xbar=222&tail=two

One thing to expect: a preset fixes the setting, not the sample. On lessons that simulate data, every visit draws a fresh random sample, so a scatter set to r = .30 will look a little different each time you open the slide and the observed coefficient will wobble around the target. That is the sampling variability the lesson is teaching, and it is worth pointing at rather than hiding.

Want a still image instead? On any lesson or calculator, a small PNG ↓ button next to each visualization downloads it at 2× resolution, in whatever theme you are viewing. Handy for slides and printed exams.

A one-semester map

Here is one way to lay the Stats 1 and Stats 2 material over a typical fourteen-week intro course, borrowing one lesson from Stats 3 for the effect-size week. It is a starting point, not a prescription: merge weeks, skip the ANOVA that your syllabus saves for a second course, or spend two weeks where your students always struggle.

WeekTopicLessons
1Orientation & dataWhat Is Statistics? · Types of Data
2Summarizing & showing dataDescribing Data · Visualizing Data
3Normal model & probabilityZ-Scores & the Normal Distribution · Probability Basics
4From sample to populationSampling Distributions · Central Limit Theorem
5Confidence intervalsConfidence Intervals
6The logic of testingHypothesis Testing Logic
7t-testsOne-Sample & Paired t-Tests · Independent Samples t-Test
8Effect size, power & midtermEffect Size & Power
9Comparing several meansOne-Way ANOVA · Post-Hoc Tests
10Two factors & repeated measuresFactorial ANOVA · Repeated Measures ANOVA
11When assumptions failANOVA & t-Test Assumptions · Non-Parametric Alternatives
12Categorical dataChi-Square Tests
13Relationships & predictionCorrelation · Simple Linear Regression
14Checking a model & revisionRegression Diagnostics · Quiz

Teaching research methods too? The Research Toolkit track adds full courses on Methods, Data, Writing, and Ethics, which map neatly onto a dissertation or capstone module. For a quantitative-methods sequel, ML & AI closes the Statistics Core and picks up where regression leaves off.

A seven-week block

Plenty of intro courses are not a semester at all. They run as a short block that follows the textbook's own order, data before probability and probability before inference, with a mock paper partway through and the real one at the end. This is that shape, laid over Stats 1 alone.

Every lesson link below carries a preset, so opening one from your slides lands on the configuration the week is about rather than on the lesson's default. The tools column is what students should have open beside the lecture, and the problems column is what they can work by hand afterward.

Prints on its own, one page, ready for a course handbook.
WeekWhat it coversLessonsToolsProblems
1
Looking at data, and producing it
Cases and variables, mean and median, quartiles and the five-number summary, variance and SD by hand, density curves and z-scores, samples against experiments §1.1 What Is Statistics? · §1.2 Types of Data · §1.3 Describing Data · §1.4 Visualizing Data · §1.5 Z-Scores & the Normal Distribution · §1.6 Producing Data & Sampling Design Descriptives on the textbook quartiles · Table A · Which chart? 1–4, 16, 26–28
2
Probability
Sample spaces, the addition and multiplication rules, conditional probability and Bayes, the mean and SD of a discrete random variable, then the binomial §1.7 Probability Basics · §1.8 The Binomial Distribution Dice lab · Distribution playground 5, 13–15, 29–31
3
Sampling distributions, and the first interval
Sampling variability, the distribution of x̄, σ/√n and the central limit theorem, then the z-interval and what moves its margin §1.9 Sampling Distributions · §1.10 Central Limit Theorem · §1.11 Confidence Intervals Table D for z* along the foot · Look-it-up drill 6–8, 17, 32
4
Testing, and inference for a mean
The five-step test with σ known, one tail or two from the wording, statistical against practical significance, Type I and Type II, then t and its degrees of freedom §1.12 Hypothesis Testing Logic · §1.13 One-Sample & Paired t-Tests Tables A and D · APA formatter 9, 10, 18, 33
5
Means, continued
Matched pairs, the robustness rule of thumb, two samples with the conservative degrees of freedom, and why two overlapping intervals settle nothing §1.13 One-Sample & Paired t-Tests · §1.14 Independent Samples t-Test APA formatter · Effect-size converter · Power calculator 11, 12, 19–20
6
Proportions and categorical data
p̂ and the counts it needs, one proportion and two, then two-way tables: expected counts, components, degrees of freedom and the textbook conditions §1.15 Inference for Proportions · §1.16 Chi-Square Tests Table F · APA formatter 21–22
7
Correlation and regression
Form, direction and strength, r as the mean of standardized products, the least-squares line from r and the two SDs, r², and what a residual plot shows that r hides §1.17 Correlation · §1.18 Simple Linear Regression Correlation & regression calculator · Descriptives 23–25
Mock
Halfway, on paper
A marked paper over the first four weeks, in the shapes the real one asks: a five-number summary, three areas off Table A, a tree, a binomial, an interval and a test Mock exam, §1.1 to §1.12, 20 questions · Formula sheet · Printed tables 26–33
Exam
All eighteen sections
Everything above, with the formula sheet, the printed tables and a basic calculator Full mock, 40 questions · the three posters: which test, APA, assumptions All 33

Two of those presets are worth a word. The §1.3 link loads eighteen real numbers into the playground rather than a simulated cloud, which is the fastest way to show a class that the mean and the median part company; pair it with the calculator link beside it and flip the quartile switch to watch Q1 move between conventions. The §1.16 link types a whole 2 × 3 table into the builder, so the expected counts, the components and the Table F bracket all appear at once.

Use it freely

StatsCapybara is free and stays free. There is no institutional license to sign, no seat count, and no ambiguity to resolve: link it, embed it, print it, and assign from it in any class, at any institution, at no cost.

It is also openly licensed, which matters if you want to do more than link. The teaching material is CC BY 4.0 and the code is MIT, so you may translate a course, cut a lesson down to a single handout, lift a practice problem into your own exam, or fork the site and run your own version, without asking me first. The license page carries the attribution line to copy.

The one ask is a small one. If it helps your students, a visible link back (from your syllabus, your course page, or your notes) helps other teachers find it, and helps keep the lights on. If you build something with it, spot an error, or wish a certain tool existed, say hi. I read every message.

The short version: pick the lessons that fit your course, paste the links, and let the capybara handle the visuals. No setup, no accounts, no cost.