WorkEntertainment

2024 Seoul Global Movie Awards
Live Popularity Vote

An official vote for hundreds of thousands, accurate to the close

The Popularity Award at the 2024 Seoul Global Movie Awards was decided by an official vote in the Celebcard app. ZEROPLUSONE built the voting screens in the app and the voting server, and carried eight days of voting by hundreds of thousands of fans through to the close.

Client
Celebcard
Service
App development · Server development
Platform
Mobile app (Flutter)
Period
2024.11.26 – 12.03
3:505G
Popularity vote
OFFICIAL VOTE2024 Seoul Global Movie Awards11.26 – 12.03
Best ActorBest Actress
  • Candidate 1
  • Candidate 2
  • Candidate 3
  • Candidate 4
  • Candidate 5
Vote
Best ActorLIVE
  • Candidate 131%
  • Candidate 224%
  • Candidate 319%
  • Candidate 414%
  • Candidate 512%

Overview

An official vote between fandoms

Ten actors with huge fandoms, including Jung Hae-in, Cha Eun-woo, Byeon Woo-seok, Han So-hee and Go Youn-jung, were nominated, and the results were announced at the ceremony on December 5. For Celebcard this was more than an event — it was a chance to show it can be trusted with an official vote.

100K+Voters, in the hundreds of thousands
8 daysVoting period · 11.26 – 12.03
10Nominees · 2 categories
12.05Results at the ceremony

Approach

A system that produces an official result has to be right before it is fast.

In a fandom vote a single miscounted vote becomes a fairness dispute, and the dispute spreads to the platform’s credibility. So from the start we treated showing rankings quickly and finalizing results accurately as two separate problems.

01/03

Pick a category and vote, right in the app

We built the voting screens for both categories in Flutter inside the Celebcard app. The server double-checks the voting period and rules, and one team built both app and server so they follow the same rules.

3:505G
Popularity vote
OFFICIAL VOTE2024 Seoul Global Movie Awards11.26 – 12.03
Best ActorBest Actress
  • Candidate 1
  • Candidate 2
  • Candidate 3
  • Candidate 4
  • Candidate 5
Vote
3:505G
Popularity vote

Your vote has been counted

Best Actor · Candidate 2

  • 1Candidate 131%
  • 2Candidate 224%
  • 3Candidate 319%
See live ranking

02/03

No stalls, even in the final rush

Votes peak right before the deadline. The voting servers scale out as needed, and incoming records are queued and processed in order, so the vote kept running even with hundreds of thousands arriving at once.

Vote request flowConcept
11.26 Voting opens12.03 Close
Vote requestAPP
ValidationAPI
Live countREALTIME

03/03

Live rankings and official results, kept apart

The live ranking fans watch refreshes lightly at short intervals, while the official result was finalized against a ledger that records every vote. The final results were announced at the ceremony on December 5.

Best ActorLIVE
  • Candidate 131%
  • Candidate 224%
  • Candidate 319%
  • Candidate 414%
  • Candidate 512%
Best ActressLIVE
  • Candidate 128%
  • Candidate 226%
  • Candidate 320%
  • Candidate 415%
  • Candidate 511%
Final result confirmed12.03 Voting closed
  • Voting closedDone
  • Ledger checkMatch
  • Announcement12.05 Ceremony

Highlights

  1. 01One team for screens and server

    One team owned everything from the Flutter screens to the voting server, so the app and server never disagreed on the rules.

  2. 02One vote counts exactly once

    Even with retries or repeated taps, the server blocks duplicates so the same vote is never counted twice.

  3. 03Closed exactly on schedule

    Voting closed on December 3 as announced, and the results were officially announced at the ceremony on December 5.

Tech stack
  • Flutter
  • Stateless API
  • Message Queue
  • In-memory Counter
  • RDB
AI transformation and product developmentTell us what you want to build
FAQContact