You're staring at a spreadsheet. A log file. Or maybe a script. A video timeline. And you need to know — exactly — how many seconds sit inside twelve hours.
The answer is 43,200.
But you probably knew that already, or you could've punched it into a calculator in three seconds. Edge cases matter. Even so, because the number alone isn't always enough. Day to day, context matters. So why are you here? And the way you use that number — in code, in scheduling, in mental math — is where things get interesting.
Let's walk through it properly.
What Is 12 Hours in Seconds
Twelve hours. Half a day. 720 minutes. 43,200 seconds.
That's the straight math:
12 × 60 × 60 = 43,200.
No leap seconds. Practically speaking, no daylight saving shifts. Think about it: no relativistic drift. Just the clean, base-60 arithmetic we inherited from the Babylonians and never quite replaced.
Why Base 60 Still Runs the Clock
Here's the thing most people don't stop to ask: why 60?*
Because 60 divides cleanly by 1, 2, 3, 4, 5, 6, 10, 12, 15, 20, and 30. That said, that's eleven factors. Ten — the base of our counting system — only has four. The Babylonians loved divisibility. So did the astronomers who came after them. And when mechanical clocks showed up in medieval Europe, they kept the system because it worked*.
We're stuck with it. And honestly? hours. Divide 60 minutes by three? In real terms, it's fine. Try dividing a decimal hour into thirds. 333... In practice, ugly. 20 minutes. You get 0.Clean.
So 12 hours = 720 minutes = 43,200 seconds. The math holds because the system was built for this.
Why It Matters / Why People Care
You're not asking for trivia. You're asking because you need to do something with this number.
Scheduling and Automation
Cron jobs. Task schedulers. Backup windows. CI/CD pipelines. Rate limits.
If you're setting a job to run every 12 hours, you're really setting it to run every 43,200 seconds. Most modern tools let you write 0 */12 * * * or every 12 hours — but under the hood, something is counting seconds. And when that something drifts, or when you're debugging why a job ran at 03:00:07 instead of 03:00:00, knowing the exact second count helps you trace the logic.
Video and Audio Production
Twelve hours of footage at 24 fps? Also, that's 1,036,800 frames. At 30 fps? 1,296,000. At 60 fps? 2,592,000.
Editors think in timecode: 12:00:00:00. Or frames. But the timeline underneath? Which means pure seconds. And when you're syncing audio recorded on a separate device — maybe drifting by a few milliseconds per hour — you start caring about the exact* second count across a 12-hour shoot.
Network Engineering and Telemetry
SNMP counters. Flow exports. Billing intervals.
A 12-hour polling window is common for certain metrics. If you're calculating bits per second from a 12-hour octet counter, you divide by 43,200. Miss a leap second? Think about it: your average is off. Miss a counter wrap? That said, your graph spikes. The number 43,200 shows up in more network math than you'd expect.
Human Context
Twelve hours is a shift. A flight. A half-day fast. The gap between your morning alarm and your evening wind-down.
Knowing it's 43,200 seconds doesn't change how long it feels. But it gives you a frame. Day to day, if you're building a habit tracker, a meditation timer, a productivity log — 43,200 is the ceiling. The budget. The container.
How It Works (and How to Use It)
Let's break down the conversions, the shortcuts, and the places where people trip up.
The Basic Multiplication Chain
You know this. But let's write it out anyway, because writing it out catches errors.
1 hour = 60 minutes
1 minute = 60 seconds
1 hour = 60 × 60 = 3,600 seconds
12 hours = 12 × 3,600 = 43,200 seconds
If you're doing this in your head:
10 hours = 36,000 seconds (easy: 10 × 3,600)
2 hours = 7,200 seconds (2 × 3,600)
Add them: 43,200.
In Code: Don't Hardcode It
Please don't write 43200 in your source code. Future you will hate present you.
Python:
TWELVE_HOURS_SECONDS = 12 * 60 * 60
# or better, for readability:
from datetime import timedelta
TWELVE_HOURS = timedelta(hours=12)
seconds = TWELVE_HOURS.total_seconds() # 43200.0
JavaScript:
const TWELVE_HOURS_MS = 12 * 60 * 60 * 1000; // milliseconds
const TWELVE_HOURS_S = 12 * 60 * 60; // seconds
Go:
twelveHours := 12 * time.Hour
seconds := int(twelveHours.Seconds()) // 43200
SQL (PostgreSQL):
SELECT EXTRACT(EPOCH FROM INTERVAL '12 hours'); -- 43200
The pattern: express intent, let the language do the math.It survives refactors. * It's self-documenting. And it handles the weird stuff — like timedelta knowing about leap seconds in some contexts — better than a magic number.
For more on this topic, read our article on where is 1.4 in inches looks like on a ruler or check out 52000 a year is how much an hour.
Mental Math Shortcuts
You don't always have a REPL open. On the flip side, or on a plane. Sometimes you're in a meeting. Or debugging a log timestamp in your head.
The 3,600 anchor:
Memorize 3,600. Seconds per hour. Everything builds on it.
- 6 hours = 21,600 (half of 43,200)
- 3 hours = 10,800 (quarter)
- 1 hour = 3,600
- 30 minutes = 1,800
- 15 minutes = 900
- 5 minutes = 300
- 1 minute = 60
The 86,400 anchor:
Seconds in a day. 24 × 3,600
= 86,400. But half of that is 43,200. If you know 86,400, you can halve it mentally: 86,400 ÷ 2 = 43,200. This is useful when you're estimating time spans or validating calculations.
The 432 shortcut:
Take 43,200 and remove the last zero: 4,320. That's 1% of 432,000. So if you're multiplying or dividing by 43,200, think in terms of 432 and adjust the decimal place. For example:
- 100,000 ÷ 43,200 ≈ 2.31 (because 432 × 231 ≈ 100,000)
- 500,000 ÷ 43,200 ≈ 11.57 (double the previous result)
These aren't precise, but they're close enough for estimation.
Common Pitfalls
Counter wrap:
Octet counters reset at 2³² (about 4.3 billion). If your 12-hour window spans the wrap point, you need to handle it. The fix:
if current < previous:
# Counter wrapped
delta = (max_value - previous) + current
else:
delta = current - previous
Leap seconds:
Most systems ignore them. NTP accounts for them. Your custom code probably doesn't. If you're aggregating data across midnight UTC, check if a leap second was inserted that day. The difference is usually negligible for averages, but it matters for precise rate calculations.
Timezones and DST:
A 12-hour window isn't always 43,200 seconds when daylight saving time kicks in. Spring forward loses a second; fall back gains one. Use UTC for metrics, or account for the shift in local time calculations.
Where 43,200 Hides
Beyond network polling, you'll find it in:
- Log rotation: Many systems rotate logs every 12 hours
- Cache expiration: Some CDNs use 12-hour cache windows
- Game timers: Turn-based games often use 12-minute turns (720 seconds), making 60 turns = 43,200 seconds
- Fitness apps: Some workout intervals are structured in 12-hour cycles
- Financial markets: Certain futures settle semi-monthly, often aligned to 12-hour trading windows
Practical Applications
Rate limiting:
If you allow 1,000 API calls per 12-hour window, you're really saying 1,000 ÷ 43,200 ≈ 0.023 calls per second. This conversion helps you set per-second throttles.
Data sampling:
Collecting metrics every 300 seconds (5 minutes) gives you 86.4 samples per 12-hour window. Round it to 86 or 90 for planning purposes.
Budgeting:
If your server costs $0.10 per hour, a 12-hour window costs $1.00. Simple, but useful when calculating cost-per-metric-window.
The Deeper Pattern
43,200 is 12 × 3,600. It's half a day. In practice, it's the product of the smallest useful time units: 12 hours, 60 minutes, 60 seconds. This number isn't arbitrary—it's the intersection of human-scale time divisions and mathematical convenience.
When you see 43,200 in code, a spec, or a log, recognize it: someone is measuring something over half a day. They're probably tracking network traffic, user activity, or system health. They've chosen 12 hours because it's long enough to smooth out noise, short enough to catch trends.
Final Calculation
43,200 seconds equals:
- 720 minutes
- 12 hours
- 0.5 days
- 1/17.28 of a year (365 × 24 ÷ 12)
It's a bridge between human time and machine time—a number that lives in both domains.
In the end, 43,200 is more than a conversion factor. It appears where precision meets practicality, where systems need to measure the half-day without leaning too hard on either calendar time or raw seconds. It's a design choice disguised as arithmetic. The next time you see it, you'll know: someone needed their metrics to fit neatly into the span between lunch and dinner, between sunrise and sunset, between one reset and the next.