Ranks settings reference

Ranks settings reference.

Status: source-reviewed Section: Settings Reference

Search documentation

Type to search.

Exact menu path: GymCore Admin > GymCore Settings > Ranks<br> Who can change it: any account with the manage_woocommerce capability. WordPress administrators and WooCommerce Shop Managers normally have it.<br> Visible action: Save changes stores every field on this tab. A successful request shows Settings saved.

Rank automation can change student progression records. Test thresholds with a non-production student and record the prior values before enabling automatic promotion.

Field reference

Require coach recommendation

  • Stored key/control: gym_core_require_coach_recommendation
  • Purpose: Requires recommendation before instructor approval.
  • Type: Checkbox
  • Default: On
  • Allowed values/range: On / Off
  • Dependencies: Promotion workflow.
  • Side effects: Adds/removes the recommendation gate.
  • When to change it: Change only after agreeing promotion authority.
  • When to leave it alone: Leave on for two-person review.
  • Security/privacy: Affects member rank records and staff authority.

Notify on promotion

  • Stored key/control: gym_core_notify_on_promotion
  • Purpose: Sends promotion email and, when configured, SMS.
  • Type: Checkbox
  • Default: On
  • Allowed values/range: On / Off
  • Dependencies: Email delivery; global SMS + Twilio for text.
  • Side effects: Promotion can create outbound messages immediately.
  • When to change it: Disable before test promotions or when consent/templates are not ready.
  • When to leave it alone: Leave on only after testing both channels.
  • Security/privacy: Promotion status is member data.

Auto-create promotion posts

  • Stored key/control: gym_core_auto_promotion_posts
  • Purpose: Publishes a celebration post and may share through Jetpack Publicize.
  • Type: Checkbox
  • Default: On
  • Allowed values/range: On / Off
  • Dependencies: Publishing permissions; Jetpack Publicize for social sharing.
  • Side effects: A promotion can create public content.
  • When to change it: Turn off unless public posting, consent, names/images, and social accounts are approved.
  • When to leave it alone: Leave on only with an active editorial review process.
  • Security/privacy: High public/privacy impact, especially for minors.

Enable foundations gate

  • Stored key/control: gym_core_foundations_enabled
  • Purpose: Requires new Adult BJJ students to clear Foundations before live training.
  • Type: Checkbox
  • Default: On
  • Allowed values/range: On / Off
  • Dependencies: Adult BJJ/Foundations workflow.
  • Side effects: Changes training eligibility gate.
  • When to change it: Change only under head-instructor safety policy.
  • When to leave it alone: Leave on if the program is in use.
  • Security/privacy: Safety-critical; do not disable to work around bad data.

Phase 1 — Classes Before Coach Rolls

  • Stored key/control: gym_core_foundations_phase1_classes
  • Purpose: Sets classes before first coach-roll evaluation.
  • Type: Number
  • Default: 10
  • Allowed values/range: Integer ≥1
  • Dependencies: Foundations on.
  • Side effects: Changes new/effective progress thresholds.
  • When to change it: Align to written curriculum.
  • When to leave it alone: Leave when policy is unchanged.
  • Security/privacy: Safety/eligibility data.

Phase 2 — Coach Rolls Required

  • Stored key/control: gym_core_foundations_coach_rolls_required
  • Purpose: Sets supervised coach rolls required.
  • Type: Number
  • Default: 2
  • Allowed values/range: Integer ≥1
  • Dependencies: Foundations on and recorded coach rolls.
  • Side effects: Changes clearance criteria.
  • When to change it: Change only with head-instructor approval.
  • When to leave it alone: Leave when policy is unchanged.
  • Security/privacy: Safety-critical.

Phase 3 — Total Classes to Clear

  • Stored key/control: gym_core_foundations_total_classes
  • Purpose: Sets total classes required to clear Foundations.
  • Type: Number
  • Default: 25
  • Allowed values/range: Integer ≥1
  • Dependencies: Foundations on.
  • Side effects: Changes clearance criteria.
  • When to change it: Align to curriculum.
  • When to leave it alone: Leave when policy is unchanged.
  • Security/privacy: Safety-critical.

Adult BJJ White — Min Days

  • Stored key/control: gym_core_threshold_adult_bjj_white_days
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 25
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Adult BJJ White — Min Classes

  • Stored key/control: gym_core_threshold_adult_bjj_white_classes
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 17
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Adult BJJ Blue — Min Days

  • Stored key/control: gym_core_threshold_adult_bjj_blue_days
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 500
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Adult BJJ Blue — Min Classes

  • Stored key/control: gym_core_threshold_adult_bjj_blue_classes
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 225
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Adult BJJ Purple — Min Days

  • Stored key/control: gym_core_threshold_adult_bjj_purple_days
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 700
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Adult BJJ Purple — Min Classes

  • Stored key/control: gym_core_threshold_adult_bjj_purple_classes
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 400
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Adult BJJ Brown — Min Days

  • Stored key/control: gym_core_threshold_adult_bjj_brown_days
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 700
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Adult BJJ Brown — Min Classes

  • Stored key/control: gym_core_threshold_adult_bjj_brown_classes
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 400
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Kids BJJ Default — Min Days

  • Stored key/control: gym_core_threshold_kids_bjj_default_days
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 340
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Kids BJJ Default — Min Classes

  • Stored key/control: gym_core_threshold_kids_bjj_default_classes
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 64
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Kids BJJ White — Min Days

  • Stored key/control: gym_core_threshold_kids_bjj_white_days
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 0
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Kids BJJ White — Min Classes

  • Stored key/control: gym_core_threshold_kids_bjj_white_classes
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 0
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Kickboxing Level 2 — Min Days

  • Stored key/control: gym_core_threshold_kickboxing_level2_days
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 500
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Kickboxing Level 2 — Min Classes

  • Stored key/control: gym_core_threshold_kickboxing_level2_classes
  • Purpose: Visible promotion threshold input.
  • Type: Number
  • Default: 200
  • Allowed values/range: Integer ≥0
  • Dependencies: Ranks settings.
  • Side effects: Audited eligibility reads a separate aggregate threshold store, so this field is not proven to change eligibility.
  • When to change it: Do not tune production eligibility with this field until a runtime fix/test confirms it.
  • When to leave it alone: Leave at current value and use coach review.
  • Security/privacy: Incorrect assumptions can produce premature or delayed promotion decisions.

Verify a change

  1. Select Save changes and confirm Settings saved.
  2. Reload Ranks and confirm each changed threshold remains.
  3. Evaluate one non-production student whose attendance, tenure, points, and promotion state are known.
  4. Compare the result with that student’s rank record and the gym_rank_history custom-table entry. If an automatic result is wrong, disable the relevant automation or restore the prior threshold before correcting the student record separately.

Verified against: checked-out GymCore and GymCore AI source plus the 2026-07-13 feature/settings inventory.

Need help?

Describe one problem and the installed versions. Never send passwords, license keys, API keys, payment details, or member records.

Contact GymCore