
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.
| commentID | accountKey | text | timeUTC | rule result | decision |
|---|---|---|---|---|---|
| C1 | Account A | green @b @c | 19:00 | valid tokens and distinct handles | Eligible |
| C2 | Account A | green @b @c | 19:10 | duplicate account | Ineligible (Extra entry) |
| C3 | Account B | green @d @d | 19:20 | non-distinct handles | Ineligible (Failed handle rule) |
| C4 | Account C | green @e @f | 20:05 | submitted after cutoff | Ineligible (Late) |
| C5 | Account D | green @g @h | 19:40 | valid tokens and distinct handles | Eligible |
| C6 | Unknown | green @i @j | Missing | missing ID and date proof | Unresolved |
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 ↑
