
Ādažu Čipsi is Latvia’s best-known potato chips brand. To launch two mystery flavours they ran a national guessing contest - “Zini vai mini?” (know it, or guess it) - and we built the microsite that ran it. Visitors watch a new video clue each week, guess the two secret flavours, and enter to win. Behind the playful front is a real contest engine: a custom submission API, anti-abuse rules, and a cache-aware design that keeps a heavily-cached page able to take valid entries.
Guess two flavours, one entry at a time

The whole campaign hangs on two mystery bags - flavour #01 and #02. A visitor picks a guess and submits it with their phone number through a form wired to a custom REST API. Guesses land in dedicated database tables, with one correct answer stored per flavour per week, so every draw knows exactly who got it right.
A new clue every week

“Pavedieni” - the clues - are short videos released one per week across the campaign, played in a Swiper carousel with a modal video player. More than a dozen shipped incrementally as the contest ran, each one narrowing the mystery a little further and giving people a fresh reason to come back and guess again.
Fair draws, published winners

Every week 20 bags of chips went out, and at the close ten €500 cash prizes. Winners are published straight on the page by draw date, with phone numbers partially masked (26308XXX) so people can spot themselves without a full number on show. The engine enforces the fairness behind those lists: 10 guesses per IP per hour, one guess per phone per flavour per day, and Latvian +371 phone normalization so the same number in a different format cannot slip a second entry through.
Built to survive its own cache
A campaign page like this gets hammered, so it sits behind LiteSpeed and a CDN. That normally breaks form security - a cached page serves a stale nonce the server then rejects. We built around it: a dedicated no-store endpoint fetches a fresh nonce right before submission, with a cache compatibility layer that bypasses the cache for that one request. On the back end, the admin panel filters submissions by week and flavour and exports to CSV - including a GDPR-lighter “week participants” export that strips IPs, guess text, and answer keys for lists that can be shared safely.
Stack: WordPress (Bedrock, Composer-managed), custom theme with SCSS and esbuild, Swiper, Panton web fonts. Custom contest plugin: REST API, custom DB tables, IP and phone rate limiting, cache-aware nonce refresh, CSV export. ACF, LiteSpeed Cache, Wordfence.