Entry cards pass through fixed review rules into accepted, excluded, and unknown trays.
Apply the same recorded rules to each entry.

1. Set the Rules and Cutoff First

Save your published contest rules and date cutoff before checking any entries. State if the unit is one account or one qualifying comment. Write down required text and tag conditions. Decide how you will handle duplicate entries, late comments, and missing proof. Do not invent new rules after you look at the entrants.

2. Test the Post with a Small Pilot

Test your contest post with a comment cap of three using your Task. Check the target identity and output to see how data looks. Keep collection bounds tight for the real review. Note that the public tool returns top-level comments only, and does not export replies. If your rules allow reply entries, you need another collection method.

3. Keep Raw Export Fields

Save raw comment text, comment IDs, owner IDs, usernames, dates, and observation time. Distinct comment IDs remove repeated export rows. Identical words under different IDs can be separate submitted comments. Do not remove entries just because words repeat.

4. Check Visible Rules and Time Zones

Apply visible rules like a required answer word or two distinct mention handles. Mentions prove text compliance, but not that tagged people are real or qualified. Check missing dates and authors separately. Use the date cutoff time zone, not your browser time zone.

5. Make One Decision Per Entry

Create one decision for each entry: eligible, ineligible with a specific rule reason, or unresolved with missing proof. Follow status, private accounts, home country, purchases, and bot identity are not shown in comment rows. Keep those checks manual if your rules require them. Do not guess that an account is a bot just because its comment is short.

6. Group Accounts and Handle Aliases

If the rule allows one entry per account, group verified owner IDs together. Aliases that share the same ID count as one account. If IDs are missing, use a weaker handle key and review conflicts carefully. Do not claim you know the real person behind the account. Keep an entry-to-account map so every exclusion can be checked.

7. Finish the Ledger Before the Draw

Finish your eligibility ledger and coverage note before you run any random draw. If your collection is partial, state which entry pool was checked. Resolve gaps before you claim a complete contest pool. This process does not supply a random selector or prove legal contest compliance.

Collection setup

Collection uses Actor https://apify.com/chronometrica/instagram-comments-scraper and Task https://apify.com/chronometrica/instagram-comments-scraper/examples/instagram-giveaway-comment-export. Inputs include postUrls with known public /p/, /reel/, or /tv/ URLs, maxCommentsPerPost preset 500 changed pilot 3, collectAllAvailable=false, and commentSortMode=default. Exact row fields are postUrl, postId, postShortCode, commentId, text, createdAt, likesCount, repliesCount, ownerId, ownerUsername, ownerVerified, and collectedAt. Use ownerId, not authorId. Null means unknown. Zero and false are actual values. There is no native row status, parentId, reply text, follower proof, or bot verdict. Output metadata includes requestedTargets, savedRows, cappedTargets, and per-target resultState, sampleHealth, and stopReason. The current control returned three top-level comment IDs, text, owner IDs, and dates matched to the shortcode, with output capped by max_comments_reached, savedRows 3, and repliesCount null. This does not mean all entrants, all replies, or true first chronology are captured.

Worked example eligibility ledger

Fictional rules: one entry per account, submit the word green, and tag two distinct handles before October 1, 2026, at 20:00 UTC.

Worked example eligibility ledger
commentIDaccountKeytexttimeUTCrule resultdecision
C1Account Agreen @b @c19:00valid tokens and distinct handlesEligible
C2Account Agreen @b @c19:10duplicate accountIneligible (Extra entry)
C3Account Bgreen @d @d19:20non-distinct handlesIneligible (Failed handle rule)
C4Account Cgreen @e @f20:05submitted after cutoffIneligible (Late)
C5Account Dgreen @g @h19:40valid tokens and distinct handlesEligible
C6Unknowngreen @i @jMissingmissing ID and date proofUnresolved

Fictional date: 2026-10-01, cutoff 20:00 UTC, one account entry. C1 and C5 yield two eligible verified accounts. C2, C3, and C4 yield three extra or ineligible rows. C6 yields one unresolved row with no automatic disqualification. Printed text includes distinct @handles where required.

Sources & further reading

By Chronometrica · Updated

Back to top ↑