Skip to main content

Documentation Index

Fetch the complete documentation index at: https://help.openfishingcup.com/llms.txt

Use this file to discover all available pages before exploring further.

Submit a Catch

Open Fishing Cup uses a single-page scrollable workflow to submit your catch. Sections appear progressively as you complete each one, with AI-powered checks ensuring fair play and accurate rankings.
Mobile App Required — Catch submissions are only available in the native mobile app (iOS & Android). The web version will prompt you to download the app if you try to submit from a browser.

Before You Start

Make sure you have:
  • ✅ An Open Fishing Cup account (sign up for free)
  • ✅ The mobile app installed (App Store / Google Play)
  • ✅ GPS/Location Services enabled on your phone
  • ✅ A measuring scale or ruler ready for your catch

1. Take Your Photo

The first thing you do is capture a photo of your catch with the measuring scale visible.
Photo capture screen showing camera button and upload area

How to Take the Photo

  1. Tap the camera area to open your device camera
  2. Place your fish on a measuring scale (ruler, bump board, or measuring mat)
  3. Make sure the entire fish and scale markings are clearly visible
  4. Take the photo — GPS coordinates and timestamp are automatically recorded
The photo must be taken directly with your phone camera through the app. Screenshots, photos of screens, and photos downloaded from the internet will be rejected.

Immediate Checks

As soon as you take your photo, the app runs these checks automatically:
CheckWhat It Does
GPS & Date ExtractionReads location and timestamp from photo metadata (EXIF) — shown first as an info box
Duplicate CheckChecks if this exact photo was already submitted
If GPS or date metadata is missing, the photo is rejected immediately and you’ll need to take a new one.

GPS Source

The app shows where your location data comes from with an indicator badge:
  • 🖼️ Photo EXIF — GPS coordinates embedded in the photo file by your camera (preferred)
  • 📱 Device GPS — Real-time location from your phone’s GPS sensor (fallback when EXIF data is missing)
You can expand the GPS Coordinates section to see the exact latitude, longitude, altitude, and photo date.

Common Rejection Reasons

RejectionWhat It MeansHow to Fix
No GPS dataPhoto doesn’t contain location metadataEnable GPS on your phone and take a new photo through the app
No date informationPhoto is missing EXIF timestampUse the original photo from your camera, don’t use edited or transferred images
Image too oldPhoto was taken more than the allowed number of hours agoTake a fresh photo of your current catch
Duplicate imageThis exact photo was already submittedEach photo can only be used once
If your photo is rejected, tap “Try Another Photo” to retake. You can also tap “Cancel” to go back to the home screen.

2. Select Species & Enter Length

Once your photo passes the initial checks, the species and length section appears below.
Species selection and length entry with verify button

Species Selection

  • Select your fish species from the dropdown menu
  • Each species is shown with its icon for easy identification
  • The species you select will be verified by AI in the next step

Entering the Length

  1. Enter the fish length in centimeters (whole numbers only, 1–500 cm)
  2. Both species and length are required before you can proceed to verification

Country-Specific Minimum Lengths

Some countries enforce minimum legal catch sizes. If your entered length is below the minimum for the selected species in your country, you will see a rejection dialog and cannot proceed until you correct the length.

3. Verify Your Catch

After selecting the species and entering the length, tap the “Verify Catch” button (marked with a ShieldCheck icon). This triggers all AI-powered checks in parallel:
CheckWhat It DoesResult
Species DetectionIdentifies the fish species using AI and compares it to your selectionSpecies match + confidence level
Scale DetectionVerifies a measuring scale is visible in the photoScale visible / not visible
Authenticity CheckDetects AI-generated or manipulated imagesAuthentic / Suspicious
Recapture DetectionDetects if the photo is a photo-of-a-photo or screen captureOriginal / Recapture detected
Length VerificationCompares your entered length against what the AI measures from the photoConfidence level (High / Medium / Low)

Verification Results

After the checks complete, you’ll see status cards with color-coded results:
  • 🟢 Green (High confidence) — Check passed. Your catch stays approved.
  • 🟡 Gold/Yellow (Medium confidence) — Some uncertainty. Your catch will be set to pending for manual review.
  • 🔴 Red (Low confidence) — Check failed or significant mismatch. Your catch will be set to pending for manual review.
AI check results showing species detection and authenticity verification

What Triggers “Pending” Status

Your catch is set to pending (requiring manual admin review) when:
  • The AI-detected species differs from your selection or has low confidence
  • The AI-detected length is significantly smaller than what you entered (larger AI lengths are fine)
  • Image authenticity or recapture checks return low confidence
Even if some checks return low confidence, you can still proceed. Your catch will be submitted as pending and reviewed by an admin.
Once verification completes successfully, the button turns green and is disabled — you’re ready to fill in the remaining details.

Rejection During Verification

Some results will block you from proceeding:
RejectionWhat It MeansHow to Fix
No species detectedAI couldn’t identify a fish in the photoMake sure the fish is clearly visible and well-lit
No scale visibleAI couldn’t detect a measuring devicePlace your fish on a visible ruler or measuring mat
Unsupported speciesThe detected species is not in the competitionOnly supported species can be submitted
Suspicious imageThe image appears AI-generated or heavily manipulatedUse an original, unedited photo
Recapture detectedThe photo appears to be a photo of another photo or screenTake a direct photo of the actual fish

4. Fill in Details

After verification, the remaining fields appear for you to complete.
Catch details form with date, location, water body, and country fields

Auto-Filled Fields

The following fields are automatically filled from your photo’s GPS data:
  • 📅 Date & Time — Extracted from the photo EXIF data or device capture time
  • 📍 Location — Nearest town/village from reverse geocoding
  • 🌍 Country — Detected from GPS coordinates (EU countries supported)
If you manually edit any auto-filled field, your catch status will be changed to pending for admin review. This is a fairness measure to prevent location spoofing.

Water Body Selection

The water body field uses a smart selector with three sources:
  1. Nearby Waters — Automatically detected water bodies near your GPS location (rivers, lakes, canals) using OpenStreetMap data
  2. Previously Used — Water names from your previous approved catches in the same country
  3. Custom Entry — Type any water name if the auto-detection didn’t find the right one
Water body selector showing nearby waters and previously used options
If only one water body is found nearby, it’s automatically selected for you.

Additional Photos (Optional)

You can add up to 2 extra photos of your catch. These are optional but recommended for verification.
  • Tap the dashed upload boxes to add photos
  • Extra photos must be taken on the same day as the main catch photo (validated via EXIF date)
  • Photos with no EXIF date information will be rejected
  • Photos are checked for inappropriate content
If you add at least one additional photo, the “Selfie With Your Catch” prompt is skipped.
Extra photo upload area with two dashed upload boxes

Caption (Optional)

Add a short caption (up to 250 characters) to tell the story behind your catch. This will appear on your catch card in the feed.
  • Captions are checked for inappropriate content and links (links are not allowed)
  • If your caption is blocked by moderation, you’ll see an error message

5. Submit

The “Submit Catch” button becomes active once:
  • Your photo has passed the initial checks
  • You’ve completed the “Verify Catch” step
If water body or country auto-detection fails, the button remains active — you’ll see a toast notification prompting you to fill in the missing fields manually when you tap it.
  1. Tap the “Submit Catch” button
  2. If water or country is empty, you’ll see a toast asking you to enter them
  3. If you haven’t added extra photos, a prompt will ask if you want to add some or continue without them
  4. The app uploads your photos, runs final moderation checks, and saves your catch

After Submission

Success Screen

After a successful submission, you’ll see a congratulations screen with two options:
  • “View Catch” — Takes you to your catches list (My Catches)
  • “Submit Another” — Resets the form so you can submit another catch immediately
Success screen showing congratulations message with View Catch and Submit Another buttons

Catch Status

Your catch will have one of two statuses:
StatusMeaning
ApprovedAll AI checks passed with high confidence. Your catch is immediately visible and counts toward rankings.
PendingOne or more checks had low/medium confidence, or you edited auto-filled fields. Your catch will be reviewed manually by an admin before approval.
When your catch is pending, the app displays a status card listing the specific reasons (e.g., species mismatch, low length confidence, manual edits) along with a notice that manual admin review is required. This transparency helps you understand what triggered the review. Pending catches are still saved and visible to you, but they won’t appear in public rankings until approved.

Photo Requirements

✅ Do’s

RequirementWhy
Use the app’s cameraEnsures GPS and timestamp metadata are captured correctly
Place fish on a measuring scaleRequired for AI length verification
Make sure scale markings are visibleThe AI reads the scale to verify your length entry
Keep GPS enabledLocation is required for country detection and fair play
Use good lightingBetter photos = more accurate AI species detection
Take the photo immediatelyPhotos older than the configured time window will be rejected

❌ Don’ts

AvoidWhy
Screenshots or screen photosDetected by recapture check and rejected
Downloaded or transferred imagesMay lose EXIF metadata or be flagged as suspicious
Heavily edited photosMay be flagged as AI-generated or manipulated
Photos without a measuring deviceScale detection will fail
Using someone else’s photoDuplicate check will catch reused images
Photos taken days agoImage age check will reject old photos

Troubleshooting

”My photo keeps getting rejected”

  1. Check GPS is enabled — Go to your phone’s Settings → Location and make sure it’s turned on
  2. Take a fresh photo — Use the app’s camera button, don’t import from your gallery
  3. Show the measuring scale clearly — The AI needs to see ruler/scale markings
  4. Make sure the fish is visible — Good lighting and clear framing help species detection
  5. Don’t edit the photo — Use the original, unmodified photo

”My catch is pending instead of approved”

This happens when:
  • AI species confidence was medium or low
  • AI scale confidence was medium or low
  • The AI-detected length was significantly smaller than your entered length
  • You manually edited auto-filled fields (date, location, country)
The app shows you the specific reasons for the pending status in a yellow status card, along with a note that manual admin review is required. Pending catches are reviewed by admins and will be approved if everything looks correct.

”I can’t find my water body”

If the automatic water detection doesn’t find your fishing spot:
  1. Try the search field to look through previously used water names
  2. Type the name manually — a “Use [name]” option will appear
  3. Water names are title-cased automatically (e.g., “lake michigan” → “Lake Michigan”)

“The app says I need the mobile app”

Catch submissions are restricted to the native mobile app for GPS verification and camera access. Download the app from the App Store or Google Play to submit catches.

”Rate limit reached”

If you see a rate limit error, wait a few minutes before trying again. This protects our AI services from overload.