Moon Phase Calculator for Tabletop RPG: Track Custom Fantasy Moons and Tidal Cycles

Calculate moon phases for any fantasy world with custom orbital periods. Track multiple moons at once, see 10-day forecasts, and get a combined tide level for magic and weather systems in D&D, Pathfinder, or any RPG.

Full Tide
50%
Current Campaign Day 0
Moons configuration
Lunar Phase & Tide Forecast
Utilities Studio

Want this utility on your website?

Customize colors and dark mode for WordPress, Notion or your own site.

Frequently Asked Questions

What orbital period should I use for my fantasy world?

If your setting does not specify one, 28 to 30 days works well for a single moon. For multiple moons, pick periods that are not simple multiples of each other (e.g. 20 and 27) so alignments do not repeat too often. Shorter periods (10 to 15 days) work well for secondary moons that create frequent minor tides.

How do I make two moons align at a specific campaign moment?

Set both moons to the same offset value. They will start in the same phase on Day 0 and align again at every common multiple of their two periods. To stagger them, give the second moon an offset equal to half of its orbital period so they start opposite each other.

What does a Spring Tide mean in game terms?

Spring Tide means all active moons are pulling in alignment, producing maximum tidal energy. You can use this to trigger wild magic surges, boost healing spell ranges, worsen storm severity, or mark it as a sacred night for religious factions in your world.

What does a Neap Tide mean in game terms?

Neap Tide occurs when moons partially cancel each other out. It is a good moment for antimagic effects, a dead calm at sea, or for villains who need predictable magic suppression to execute their plans.

Can I use this for Call of Cthulhu or horror campaigns?

Yes. Use a single 29-day moon and set the offset so the full moon falls on the session climax. The tide tracker can represent Mythos influence or psychic sensitivity peaks that scale with the phase percentage.

How does the 10-day forecast work?

The forecast shows the moon phase of each active moon as a colored dot for each of the next 10 campaign days, starting from the current day. The percentage below each day column is the combined tide level. High percentage days are good candidates for dramatic encounters tied to magic or weather.

Can I track a moon with a very short cycle, like 7 days?

Yes. Set the orbital period to 7. The moon will complete a full cycle every week of in-game time, going through all 8 phases. This is useful for campaign worlds where lunar magic resets weekly, or for tracking a small comet-like body that passes regularly.

How do I match the moon phase from a published adventure module?

Look up the campaign day in the adventure and note the described phase. Count how many days into the cycle that corresponds to, divide by the orbital period, and use that as your offset. For example, a first quarter moon on Day 0 of a 28-day cycle means the offset is 7 (one quarter of 28).

# How to Track Moon Phases in a Fantasy RPG Campaign

Most fantasy settings have moons with orbital periods that differ from the real-world 29.5-day lunar cycle. The Orbital Period field sets how many in-game days it takes a moon to complete one full cycle. The Earth moon takes 29 days; the Eberron setting uses 28; Tolkien's Middle-earth has a moon cycle close to 30. Set this to whatever your world's lore specifies, or pick any number between 5 and 60 days that produces the eclipse frequency you want.
3 Moons tracked at once
10 Day forecast range
5 Tide states (Neap to Spring)

# Understanding the Starting Offset Field

The Starting Offset shifts where a moon is in its cycle on campaign Day 0. An offset of 0 means the moon starts at a New Moon. An offset equal to half the orbital period starts it at a Full Moon. Use this to match the phase described in your campaign's opening scene, or to ensure two moons start in different positions so they do not always align.

# What the Tide Level Means for Your Game

The tide level combines the gravitational pull of all active moons based on their current phases. A Spring Tide (above 75%) occurs when moons are nearly aligned at full or new phase, pulling in the same direction. A Neap Tide (below 30%) happens when moons are in opposing phases, partially cancelling each other out. You can tie this directly to any mechanical system: spell save DC bonuses, druid wildshape duration, werewolf transformation thresholds, or storm severity on coastal maps.

Single Moon

Best for settings that closely mirror the real world or have a single dominant moon. Simple 8-phase cycle, easy to follow without reference.

  • Good for D&D Forgotten Realms (Selune, 30 days)
  • Werewolf and lycanthrope campaigns
  • Horror sessions tied to the full moon

Twin Moons

Common in high-fantasy settings. Creates frequent partial alignments and interesting mid-cycle tides. Alignments happen roughly every LCM(period1, period2) days.

  • Eberron (Rhaan 28d + Aryth 12d)
  • Creates predictable eclipse seasons
  • Good for druidic or elemental magic systems

Triple Moons

Rare triple alignments create unpredictable surges. The combined tide becomes chaotic and hard to predict without this tool, which is what makes it dramatically useful.

  • Wild magic surge tables on alignment
  • Pathfinder Golarion-style complexity
  • Long-period cycles for epic campaigns

# Common Orbital Periods for Fantasy Worlds

Selune (Forgotten Realms)
30-day orbital period, single moon. Use offset 15 to start at a full moon on session 1.
Eberron Moons
Eberron has 12 moons with periods from 9 to 28 days. Run each as a separate moon instance, or pick the two most plot-relevant.
Golarion (Pathfinder)
Golarion has a single moon, Somal, with a 29-day cycle. Dark tapestry events can be modeled by setting a second low-period moon with offset interference.
Custom World
A 15-day moon produces 24 full moons per year. A 45-day moon produces roughly 8. Shorter periods mean more frequent eclipse events but reduce their narrative weight.

Tip: Setting Up a Specific Phase for Session 1

SETUP TIP
If your campaign starts on a crescent moon, set the offset to about 20% of the orbital period. For a full moon start, use 50% of the period as the offset. For example, a 28-day moon starting full would use offset 14. Advance the day counter to your current campaign day and the forecast will show the next 10 days automatically.

Bibliographic References