{"id":67345,"date":"2026-10-21T09:59:01","date_gmt":"2026-10-21T06:59:01","guid":{"rendered":"https:\/\/wpcalc.com\/en\/?p=67345"},"modified":"2026-10-21T09:59:01","modified_gmt":"2026-10-21T06:59:01","slug":"pomodoro-timer","status":"publish","type":"post","link":"https:\/\/wpcalc.com\/en\/life\/pomodoro-timer\/","title":{"rendered":"Pomodoro Timer"},"content":{"rendered":"<section class=\"not-prose calculator-box\" aria-labelledby=\"calculator-title\"><div class=\"flex items-baseline sm:items-center justify-between gap-2 sm:gap-3\"><div class=\"flex flex-col sm:flex-row sm:items-center gap-2\"><span class=\"icon icon-calculator text-primary-700! text-base! dark:text-primary-300!\" aria-hidden=\"true\"><\/span><h2 id=\"calculator-title\" class=\"text-lg font-display font-bold\">Set Up Your Pomodoro Cycle and Start Focusing<\/h2><\/div><div class=\"calcdash-favorite group\">\n  <button type=\"button\" class=\"favorite\" id=\"favorite\" data-favorite-id=\"67345\" data-favorite-title=\"Pomodoro\" data-favorite-url=\"https:\/\/wpcalc.com\/en\/life\/pomodoro-timer\/\" data-favorite-excerpt=\"A configurable Pomodoro timer with focus blocks, short and long breaks, daily focus statistics and a session log. Set your cycle lengths, press Start, and stay on task \u2014 the timer keeps time even in a background tab.\" aria-label=\"Add to Favorites\" data-favorite-icon=\"icon icon-life\">\n    <span class=\"icon icon-shape-star-empty\" aria-hidden=\"true\"><\/span>\n  <\/button>\n  <div class=\"calcdash-favorite__tip\" aria-hidden=\"true\">\n   <span class=\"favorite-tooltip\" id=\"favorite-tooltip\"><\/span>\n  <\/div>\n  <span class=\"sr-only\" role=\"status\" id=\"favorite-status\"><\/span>\n<\/div><\/div><form action=\"https:\/\/wpcalc.com\/en\/life\/pomodoro-timer\/\" method=\"POST\" class=\"calculator\" id=\"calculator-67345\" data-post=\"67345\"><fieldset class=\"fieldset-input is-2\"><legend class=\"sr-only\">Input Fields<\/legend><div class=\"field has-term\" id=\"input-1\"><label for=\"field-1\">Focus length<\/label><div class=\"term\">\u25a0<\/div>  <div class=\"absolute bottom-0 left-16 top-8 w-2 h-0.5 bg-blue-500\"><\/div><input type=\"text\" name=\"focus_length\" id=\"field-1\" aria-describedby=\"calc-unit-1 calc-info-1\" data-number inputmode=\"decimal\" autocomplete=\"off\" spellcheck=\"false\" min=\"1\" max=\"180\" value=\"25\"\/><div class=\"unit\" id=\"calc-unit-1\">min<\/div><small id=\"calc-info-1\">Length of one focus block. The classic Pomodoro technique uses 25 minutes.<\/small><\/div><div class=\"field has-term\" id=\"input-2\"><label for=\"field-2\">Short break<\/label><div class=\"term\">\u25cb<\/div>  <div class=\"absolute bottom-0 left-16 top-8 w-2 h-0.5 bg-blue-500\"><\/div><input type=\"text\" name=\"short_break\" id=\"field-2\" aria-describedby=\"calc-unit-2\" data-number inputmode=\"decimal\" autocomplete=\"off\" spellcheck=\"false\" min=\"1\" max=\"60\" value=\"5\"\/><div class=\"unit\" id=\"calc-unit-2\">min<\/div><\/div><div class=\"field has-term\" id=\"input-3\"><label for=\"field-3\">Long break<\/label><div class=\"term\">\u25d1<\/div>  <div class=\"absolute bottom-0 left-16 top-8 w-2 h-0.5 bg-blue-500\"><\/div><input type=\"text\" name=\"long_break\" id=\"field-3\" aria-describedby=\"calc-unit-3\" data-number inputmode=\"decimal\" autocomplete=\"off\" spellcheck=\"false\" min=\"1\" max=\"60\" value=\"15\"\/><div class=\"unit\" id=\"calc-unit-3\">min<\/div><\/div><div class=\"field has-term\" id=\"input-4\"><label for=\"field-4\">Long break after<\/label><div class=\"term\">N<\/div>  <div class=\"absolute bottom-0 left-16 top-8 w-2 h-0.5 bg-blue-500\"><\/div><input type=\"text\" name=\"long_break_after\" id=\"field-4\" aria-describedby=\"calc-unit-4 calc-info-4\" data-number inputmode=\"decimal\" autocomplete=\"off\" spellcheck=\"false\" min=\"1\" max=\"12\" value=\"4\"\/><div class=\"unit\" id=\"calc-unit-4\">blocks<\/div><small id=\"calc-info-4\">After this many completed focus blocks the timer offers the long break.<\/small><\/div><div class=\"field is-single\" id=\"input-5\"><label for=\"field-5\">Task name (optional)<\/label><input type=\"text\" name=\"task_name_optional\" id=\"field-5\" aria-describedby=\"calc-info-5\" placeholder=\"What are you working on?\" step=\"any\" value=\"Deep work\"\/><small id=\"calc-info-5\">Shown next to the timer and in the session log.<\/small><\/div><div class=\"field is-checkbox is-single\" id=\"input-6\"><input type=\"checkbox\" id=\"field-6\" value=\"1\" checked=\"checked\"\/><label for=\"field-6\">Browser notifications<\/label><\/div><\/fieldset><div class=\"buttons\"><button type=\"submit\" data-text=\"Re-Calculate\" id=\"calculate-button\" data-post=\"67345\">Calculate<\/button><button type=\"reset\">Reset<\/button><\/div><div class=\"field is-checkbox hidden!\" id=\"field-auto-calc\"><input type=\"checkbox\" id=\"auto-calc\"><label for=\"auto-calc\">Calculate automatically<\/label><small>If enabled, the result will update automatically when you change any value.<\/small><\/div><div class=\"fieldset-result is-hidden\" aria-labelledby=\"result-title\" aria-live=\"polite\" role=\"region\"> <h3 class=\"result-title bg-gradient-to-r from-primary-50 to-gray-50 dark:from-primary-900 dark:to-gray-800\" id=\"result-title\"><span class=\"icon icon-s-pulse\" aria-hidden=\"true\"><\/span> Your Pomodoro Session<\/h3><div class=\"result-box\"><div class=\"field-result is-column\" id=\"output-1\"><span class=\"field-title\"><span>Timer<\/span><\/span><span class=\"field-value\" id=\"result-1\"><\/span><button type=\"button\" class=\"copy-result\" data-tooltip=\"Copy Result\" aria-label=\"Copy Result\"><span class=\"copy-icon icon icon-document-copy\" aria-hidden=\"true\"><\/span><\/button><\/div><div class=\"field-result is-column\" id=\"output-2\"><span class=\"field-title\"><span>Today&#039;s Focus Statistics<\/span><\/span><span class=\"field-value\" id=\"result-2\"><\/span><button type=\"button\" class=\"copy-result\" data-tooltip=\"Copy Result\" aria-label=\"Copy Result\"><span class=\"copy-icon icon icon-document-copy\" aria-hidden=\"true\"><\/span><\/button><\/div><div class=\"field-result is-column\" id=\"output-3\"><span class=\"field-title\"><span>Completed Focus Sessions<\/span><\/span><span class=\"field-value\" id=\"result-3\"><\/span><button type=\"button\" class=\"copy-result\" data-tooltip=\"Copy Result\" aria-label=\"Copy Result\"><span class=\"copy-icon icon icon-document-copy\" aria-hidden=\"true\"><\/span><\/button><\/div><\/div><div class=\"result-actions\"><button type=\"button\" class=\"copy-link\"><svg viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\"><path d=\"M12.232 4.232a2.5 2.5 0 0 1 3.536 3.536l-1.225 1.224a.75.75 0 0 0 1.061 1.06l1.224-1.224a4 4 0 0 0-5.656-5.656l-3 3a4 4 0 0 0 .225 5.865.75.75 0 0 0 .977-1.138 2.5 2.5 0 0 1-.142-3.667l3-3Z\"\/><path d=\"M11.603 7.963a.75.75 0 0 0-.977 1.138 2.5 2.5 0 0 1 .142 3.667l-3 3a2.5 2.5 0 0 1-3.536-3.536l1.225-1.224a.75.75 0 0 0-1.061-1.06l-1.224 1.224a4 4 0 1 0 5.656 5.656l3-3a4 4 0 0 0-.225-5.865Z\"\/><\/svg><span class=\"copy-link__text\">Copy link to this calculation<\/span><\/button><span class=\"sr-only\" role=\"status\" id=\"copy-link-status\"><\/span><\/div><\/div><a href=\"#respond\" class=\"hidden transition-opacity duration-300 opacity-0 w-50 text-sm justify-center items-center gap-2 px-4 py-2 rounded bg-gray-200 text-gray-700 hover:bg-gray-300\" id=\"leave-comment\"><span class=\"icon icon-comments\" aria-hidden=\"true\"><\/span>Leave a Comment<\/a><\/form><\/section><section id=\"calc-reactions\" class=\"not-prose hidden my-12 bg-gradient-to-r from-primary-50 to-gray-50 border border-indigo-100 rounded-xl px-6 py-4 shadow-sm\" data-post=\"67345\" aria-live=\"polite\" aria-labelledby=\"calc-reactions-title\"><p id=\"calc-reactions-title\" class=\"text-sm text-gray-500 text-center mb-2\">How did this result make you feel?<\/p><div role=\"group\" aria-labelledby=\"calc-reactions-title\" class=\"grid grid-cols-3 sm:flex sm:flex-row sm:justify-around gap-4 sm:items-center sm:flex-wrap\"><button type=\"button\" aria-pressed=\"false\" class=\"reaction-btn flex flex-col items-center gap-1 text-sm text-gray-700 hover:text-primary-600 cursor-pointer transition-transform hover:scale-105\" data-reaction=\"like\"><span class=\"reaction-count\" data-reaction-count=\"like\">0<\/span><span class=\"reaction text-3xl\" aria-hidden=\"true\">\ud83d\ude00 <\/span><span class=\"reaction-description font-medium\">Like <\/span><\/button><button type=\"button\" aria-pressed=\"false\" class=\"reaction-btn flex flex-col items-center gap-1 text-sm text-gray-700 hover:text-primary-600 cursor-pointer transition-transform hover:scale-105\" data-reaction=\"helpful\"><span class=\"reaction-count\" data-reaction-count=\"helpful\">0<\/span><span class=\"reaction text-3xl\" aria-hidden=\"true\">\ud83d\udca1 <\/span><span class=\"reaction-description font-medium\">Helpful <\/span><\/button><button type=\"button\" aria-pressed=\"false\" class=\"reaction-btn flex flex-col items-center gap-1 text-sm text-gray-700 hover:text-primary-600 cursor-pointer transition-transform hover:scale-105\" data-reaction=\"confused\"><span class=\"reaction-count\" data-reaction-count=\"confused\">0<\/span><span class=\"reaction text-3xl\" aria-hidden=\"true\">\ud83d\ude15 <\/span><span class=\"reaction-description font-medium\">Confused <\/span><\/button><button type=\"button\" aria-pressed=\"false\" class=\"reaction-btn flex flex-col items-center gap-1 text-sm text-gray-700 hover:text-primary-600 cursor-pointer transition-transform hover:scale-105\" data-reaction=\"disappointed\"><span class=\"reaction-count\" data-reaction-count=\"disappointed\">0<\/span><span class=\"reaction text-3xl\" aria-hidden=\"true\">\ud83d\ude1e <\/span><span class=\"reaction-description font-medium\">Disappointed <\/span><\/button><button type=\"button\" aria-pressed=\"false\" class=\"reaction-btn flex flex-col items-center gap-1 text-sm text-gray-700 hover:text-primary-600 cursor-pointer transition-transform hover:scale-105\" data-reaction=\"inaccurate\"><span class=\"reaction-count\" data-reaction-count=\"inaccurate\">0<\/span><span class=\"reaction text-3xl\" aria-hidden=\"true\">\u274c <\/span><span class=\"reaction-description font-medium\">Inaccurate <\/span><\/button><\/div><div id=\"reaction-message\" class=\"hidden mt-8 rounded-md border border-primary-100 bg-white\/50 backdrop-blur-sm px-4 py-2 text-sm text-center shadow-sm\"><\/div><\/section><div class=\"calcdash-ad not-prose calcdash-ad--calc_result calcdash-ad--in-article\"><ins class=\"adsbygoogle\" style=\"display:block\" data-ad-client=\"ca-pub-1721569815777345\" data-ad-slot=\"6317458308\" data-ad-layout=\"in-article\" data-ad-format=\"fluid\"><\/ins><script>(adsbygoogle = window.adsbygoogle || []).push({});<\/script><\/div>\n<style id=\"wpcoderpro-inline-1\">.formula-box {\r\n\tborder-bottom: none !important;\r\n}<\/style><section class=\"formula-box\" aria-labelledby=\"formula-title\">\r\n\t<div id=\"formula-title\" class=\"not-prose font-display mb-4\"><span class=\"icon icon-formula\" aria-hidden=\"true\"><\/span><h2>Pomodoro Cycle Formula<\/h2><\/div>\r\n\t<figure class=\"not-prose formula\">\r\n\t\t<figcaption class=\"formula-title\">Formula<\/figcaption>\r\n\t\t<div class=\"text-base text-gray-800\" id=\"formula\">\n\\[ T = N \\cdot F + (N - 1) \\cdot S + L \\]\n<\/div>\r\n\t<\/figure>\r\n\t<\/p>\n<p><strong>Where:<\/strong><\/p>\n<ul>\n<li>\\(T\\) \u2014 total length of one full cycle (minutes)<\/li>\n<li>\\(N\\) \u2014 number of focus blocks before the long break<\/li>\n<li>\\(F\\) \u2014 length of one focus block (minutes)<\/li>\n<li>\\(S\\) \u2014 length of a short break (minutes)<\/li>\n<li>\\(L\\) \u2014 length of the long break (minutes)<\/li>\n<\/ul>\n<p>The formula adds up the time of one complete Pomodoro cycle: \\(N\\) focus blocks, each followed by a short break except the last one, which is followed by the long break.<\/p>\n<p>\r\n<\/section>\n<style id=\"wpcoderpro-inline-459\">.calculation-box {\r\n\tborder-bottom: none !important;\r\n}<\/style><section id=\"calculation\" class=\"calculation-box\" aria-labelledby=\"calculation-title\">\r\n\t<div id=\"calculation-title\" class=\"not-prose font-display\"><span class=\"icon icon-unordered-list\" aria-hidden=\"true\"><\/span><h2>Pomodoro \u2013 Calculation Example<\/h2><\/div>\r\n\r\n<\/p>\n<p><strong>Example:<\/strong> you keep the classic settings \u2014 25-minute focus blocks, 5-minute short breaks, a 15-minute long break, and a long break after every 4 focus blocks.<\/p>\n<p>\\[ T = 4 \\cdot 25 + 3 \\cdot 5 + 15 = 100 + 15 + 15 = 130 \\text{ min} \\]<\/p>\n<p><strong>Result:<\/strong> one full cycle lasts 130 minutes (2 hours 10 minutes), of which 100 minutes are pure focus time. After that the pattern repeats.<\/p>\n<p>\n\r\n<\/section>\n<h2>How to Use the Pomodoro Timer<\/h2>\n<ol>\n<li>Set <strong>Focus length<\/strong> \u2014 how long one work block should be (1\u2013180 min; the classic technique uses 25).<\/li>\n<li>Set <strong>Short break<\/strong> and <strong>Long break<\/strong> \u2014 the pause after each focus block and the longer rest after a full set.<\/li>\n<li>Set <strong>Long break after<\/strong> \u2014 after this many completed focus blocks the timer offers the long break instead of a short one.<\/li>\n<li>Optionally type a <strong>Task name<\/strong>; it appears next to the timer and in the session log.<\/li>\n<li>Leave <strong>Browser notifications<\/strong> checked if you want a desktop alert when a block or break ends (a short beep always plays).<\/li>\n<li>Press <strong>Calculate<\/strong>, then use <strong>Start<\/strong> to begin. The same button pauses and resumes. <strong>Skip<\/strong> jumps to the next phase, <strong>Reset<\/strong> restarts the current block. Keyboard shortcuts: <code>Space<\/code> = start\/pause, <code>S<\/code> = skip, <code>R<\/code> = reset.<\/li>\n<li>Watch <strong>Today's Focus Statistics<\/strong> and the <strong>Completed Focus Sessions<\/strong> log fill up as you finish blocks. Statistics are saved in your browser and reset automatically the next day.<\/li>\n<\/ol>\n<h2>What Is the Pomodoro Technique?<\/h2>\n<p>The Pomodoro technique is a simple time-management method: work in short, undistracted bursts and separate them with deliberate breaks. In its classic form, coined by Francesco Cirillo in the late 1980s, you work for 25 minutes, rest for 5, and after four such blocks take a longer 15\u201330 minute break. The name comes from the tomato-shaped kitchen timer Cirillo used as a student.<\/p>\n<p>The method works because it attacks the two biggest enemies of concentration: procrastination and burnout. Starting a 25-minute block feels far less intimidating than \"working all afternoon,\" which makes it easier to begin. The fixed end point also keeps you from grinding endlessly without recovery \u2014 the short breaks let attention refresh, and the long break rewards a completed set.<\/p>\n<p>Interpreting your results is straightforward. The daily statistics show how many focus blocks and minutes you actually completed \u2014 an honest picture of productive time, not just hours spent at the desk. A typical 8-hour workday realistically fits 10\u201314 full 25-minute blocks once meetings and interruptions are counted. If you consistently finish fewer, the log helps you see whether blocks are being skipped or interrupted, which is the signal to protect your focus time better.<\/p>\n<p>Use the ring and cycle dots as a progress cue: a red ring means you are in a focus block, a green ring means a break. The dots under the timer show how many focus blocks of the current set are done. If you want to check how much time a full week of cycles adds up to, or figure out when a session will finish, our <a href=\"https:\/\/wpcalc.com\/en\/life\/time-duration-calculator\/\">time duration calculator<\/a> and <a href=\"https:\/\/wpcalc.com\/en\/life\/time-calculator-add-and-subtract-time\/\">time calculator<\/a> are handy companions.<\/p>\n<h2>Assumptions, Limitations and Practical Tips<\/h2>\n<ul>\n<li><strong>Keep the tab open.<\/strong> The timer uses real timestamps, so it stays accurate even in a background tab, but the page itself must remain open somewhere in your browser. Closing the page stops the timer, although finished blocks are already saved.<\/li>\n<li><strong>Only completed focus blocks count.<\/strong> Skipping a block moves the timer forward but does not add it to your statistics \u2014 that keeps the numbers meaningful.<\/li>\n<li><strong>Changing durations mid-session.<\/strong> A new length applies when the timer is idle; a running or partly elapsed block is not stretched, and it is never shortened inconsistently \u2014 press Reset to apply the new value immediately.<\/li>\n<li><strong>Notifications need permission.<\/strong> The beep works everywhere, but desktop alerts appear only after you click <strong>Enable notifications<\/strong> and your browser accepts.<\/li>\n<li><strong>Tune the lengths to your work.<\/strong> 25\/5\/15 suits focused desk work; for deep creative or programming sessions many people prefer 50\/10 blocks, and for fragile attention spans 15\/5 can work better. The long break every 3\u20134 blocks is a good rhythm for most people.<\/li>\n<li><strong>Protect the block.<\/strong> The technique only pays off if the block is truly distraction-free: silence notifications, close unrelated tabs, and if something urgent comes up, either finish the block or skip it honestly rather than pretending you focused.<\/li>\n<li>For open-ended tasks with no fixed cycle, our <a href=\"https:\/\/wpcalc.com\/en\/life\/online-stopwatch-with-laps\/\">online stopwatch with laps<\/a> is a better fit, and after a full day you can convert your logged focus minutes for timesheets with the <a href=\"https:\/\/wpcalc.com\/en\/life\/hours-to-decimal-converter\/\">hours-to-decimal converter<\/a>.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>A configurable Pomodoro timer with focus blocks, short and long breaks, daily focus statistics and a session log. Set your cycle lengths, press Start, and stay on task \u2014 the timer keeps time even in a background tab.<\/p>\n","protected":false},"author":3168,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[6],"tags":[103],"class_list":["post-67345","post","type-post","status-publish","format-standard","hentry","category-life","tag-timers"],"acf":[],"_links":{"self":[{"href":"https:\/\/wpcalc.com\/en\/wp-json\/wp\/v2\/posts\/67345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wpcalc.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wpcalc.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wpcalc.com\/en\/wp-json\/wp\/v2\/users\/3168"}],"replies":[{"embeddable":true,"href":"https:\/\/wpcalc.com\/en\/wp-json\/wp\/v2\/comments?post=67345"}],"version-history":[{"count":1,"href":"https:\/\/wpcalc.com\/en\/wp-json\/wp\/v2\/posts\/67345\/revisions"}],"predecessor-version":[{"id":67346,"href":"https:\/\/wpcalc.com\/en\/wp-json\/wp\/v2\/posts\/67345\/revisions\/67346"}],"wp:attachment":[{"href":"https:\/\/wpcalc.com\/en\/wp-json\/wp\/v2\/media?parent=67345"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wpcalc.com\/en\/wp-json\/wp\/v2\/categories?post=67345"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wpcalc.com\/en\/wp-json\/wp\/v2\/tags?post=67345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}