A quiz visitor does not read a page, they submit to it, several times over. That inverts the read-heavy assumption every default WordPress setup is built on.
Every question answered is a write, every result is a row, and a quiz that gets shared brings all of them at once.
Question-by-question submissions hit the database far more often than ordinary traffic ever does, so connection pooling and write capacity are sized for that pattern rather than for page views.
Quizzes spread in bursts, and the burst consists of people taking the quiz rather than reading about it, so the capacity that matters is submission throughput.
Results accumulate forever and are queried back for leaderboards and reporting, so the table is indexed and partitioned by date rather than left to grow without limit.
Submission and result URLs bypass the cache entirely, so nobody is ever shown a score page that was generated for somebody else.
Score calculation and result generation run with limits sized for the longest quiz on the site rather than a default that quietly assumes ten questions.
A quiz site's health is measured in completed attempts. Page views tell you people arrived; attempts tell you the writes are landing.
Reads can be cached and writes cannot, which means a quiz site's ceiling is decided entirely by how many simultaneous writes the database will accept.
These are the settings that differ from a standard WordPress site on the same plan. Each follows from a visitor generating writes rather than reads.
| Setting | What we do | Why |
|---|---|---|
| Database connection pool | Sized for sustained concurrent writes | A quiz taker generates a write per question, so a pool tuned for read traffic saturates at a fraction of the visitor count you expected. |
| Full-page cache | Bypassed on submit, scoring and result URLs | A cached result page shows one taker the score belonging to whoever loaded it first. |
| Attempt storage | Indexed and partitioned by date | Attempt rows accumulate without limit and are read back for leaderboards, which turns an unindexed table into the slowest query on the site. |
| Scoring execution limits | Set from the longest quiz on the site | Default execution time assumes a short form, and a hundred-question assessment with weighted scoring is not a short form. |
| Submission endpoints | Isolated with their own rate limits | A quiz that gets shared sends every one of those visitors to the same endpoint within the same few minutes. |
Every plan includes free migration, daily backups, SSL and 24/7 support.
Free migration, submissions that land, and an attempts table that stays fast.