Count Résumé Months Without Double-Counting Overlapping Roles — Free
Adding the lengths of every role can count the same month twice. Enter inclusive first and last month labels to see each span, its shared months and the union of calendar months represented in your work history.
The proof surface
Bullet quantifiers turn work examples into achievement language. This strip reconciles the date labels themselves and explains inclusive month arithmetic; it does not write a résumé, infer employment status or rate experience.
Inputrole label | first month YYYY-MM | last month YYYY-MM; overlap review threshold in months
Rare deviceBullet quantifiers turn work examples into achievement language. This strip reconciles the date labels themselves and explains inclusive month arithmetic; it does not write a résumé, infer employment status or rate experience.
Output artifactCalendar months covered at least once with row-by-row context
Cost$0 local calculation · no card, paid key, subscription or signup · proposed filing price is not for sale
Sample, not your facts: Illustrative inputs: Studio role | 2022-03 | 2023-08; Weekend project | 2023-06 | 2024-02. Overlap review threshold in months = 0. Calendar months covered at least once: 24 distinct calendar months. All records are invented.
Before using the tenure-span strip
Month precision is common in a résumé because exact start and finish days may not be useful to a reader. That convenience creates a counting trap: a role ending in August and another starting in June share three month labels even if their weekly hours were very different. Use the union to understand your chronology, not to manufacture an experience claim. Freelance work, study placements, volunteering and salaried roles can all have concurrent spans; a shared month is not an error by itself. Keep role labels generic if you are experimenting or sharing a state link. The original source for dates should remain your own reliable records. No profile, résumé file, employer system or external job history is fetched by this browser tool.
Why the flat version breaks
Adding each role’s tenure as total experience
Concurrent roles can have legitimate dates yet an inflated raw sum. Distinct months are a chronology check, not a full-time-equivalent experience calculation.
Mixing inclusive and exclusive endings
This strip includes the final month. A system that treats an endpoint as the first day after employment will produce a different count; convert the convention deliberately.
Treating shared dates as suspicious
Side projects and part-time work commonly overlap. A review flag does not establish misrepresentation, job status or suitability for a position.
How to work the tenure-span strip
Enter explicit month endpoints
Use YYYY-MM for both the first and last month. The last month is included. An ongoing role needs the actual reporting month you want to use, not the word present; updating that endpoint later is an intentional change of scope.
Inspect a role before the union
A span length equals last month index minus first month index plus one. The parser checks real month numbers and refuses an end before the start. Use these per-role counts to catch an accidental year or copied endpoint.
Merge the month intervals
Overlapping or adjacent ranges are merged into a union. The headline counts each covered month once. A role note also counts the months it shares with at least one other role, without charging that shared month once for every additional concurrent role.
Keep the employment claim separate
The overlap threshold merely chooses which rows receive a review mark; it cannot make dates true or measure hours worked. Confirm chronology against your records and ask a qualified career adviser how to describe simultaneous roles if the wording is unclear.
What the tenure-span strip separates
Question
Before
Inspect this instead
Adding each role’s tenure as total experience
Concurrent roles can have legitimate dates yet an inflated raw sum. Distinct months are a chronology check, not a full-time-equivalent experience calculation.
Inspect a role before the union
Mixing inclusive and exclusive endings
This strip includes the final month. A system that treats an endpoint as the first day after employment will produce a different count; convert the convention deliberately.
Merge the month intervals
Treating shared dates as suspicious
Side projects and part-time work commonly overlap. A review flag does not establish misrepresentation, job status or suitability for a position.
Keep the employment claim separate
This tenure-span strip replaces a manual count or calculation, not source verification or the responsible person’s review.
Run it on the samples, right here
FIRST-LOAD
HYPOTHESIS / PROTOTYPE — checkout unavailable. Calculation is local. A draft is saved automatically in this browser profile when storage is available; Reset to sample clears it. Optional Pro history stores only five summaries and has its own deletion control. State links encode your inputs and can remain in browser history, clipboard or recipients’ records; share only non-sensitive rows. Optional external AI formatting leaves this device. The required site analytics beacon reports page activity; shared URLs contain encoded inputs. Do not treat an encoded URL as private. The calculator has no input-collection endpoint.
Calendar-label reconciliation only, not hiring, employment-law or résumé-truth verification. It cannot infer full-time-equivalent experience, unemployment or honesty from overlapping spans. Verify dates against your own records and consult a qualified career adviser for consequential wording; do not use the result to rank applicants.
Data note: The tenure-span strip processes role label | first month YYYY-MM | last month YYYY-MM locally. Starter/sample selection and Run compute in this tab; no input is sent by the calculator. A local draft may be saved; explicit state-link sharing or optional external AI formatting can disclose inputs. Use non-sensitive labels.
Go deeper: the companion app files the same reading as a paper ticker strip
The article demo above runs without limits. The companion app keeps a local history, exports the rows as CSV, prints the tenure-span strip reading, and holds your drafts on this device — one complete free app run; the proposed $4 one-time filing layer is not for sale.
The tenure-span strip answer stays complete for free. The proposed $4 one-time filing layer adds row CSV, print and five local reading summaries, not hidden answers. Checkout is unavailable; the article demo remains unlimited.
Calendar-label reconciliation only, not hiring, employment-law or résumé-truth verification. It cannot infer full-time-equivalent experience, unemployment or honesty from overlapping spans. Verify dates against your own records and consult a qualified career adviser for consequential wording; do not use the result to rank applicants.
What this is built on
Method: Overlapping or adjacent ranges are merged into a union. The headline counts each covered month once. A role note also counts the months it shares with at least one other role, without charging that shared month once for every additional concurrent role.
All sample records, dates, quantities and labels are invented. No outside policy, contract, rate, clock offset, measurement or accessibility standard is represented as verified.
Google’s official pricing documentation, fetched 2026-09-30, says AI Studio is free in available regions. Optional formatting may require a Google account; manual local entry requires none. Limits can change and free-tier content may be used to improve products. Do not send private records.
Before: concurrent role lengths could count a month twice. After: inclusive spans, shared months and the calendar-month union are separate readings.
Three worked readings, with different inputs
Sample A — typical inputs
Studio role | 2022-03 | 2023-08
Weekend project | 2023-06 | 2024-02
The Studio role covers eighteen inclusive calendar months and the Weekend project covers nine. Their raw sum is twenty-seven, but June, July and August 2023 appear in both. The union is twenty-four distinct calendar months, from March 2022 through February 2024. Each role’s note reports three shared months. This is not a claim of two full years of full-time employment: month labels do not reveal hours, gaps within a month or the nature of the work.
Sample B — changed plan
Studio role | 2022-03 | 2023-08
Next role | 2023-09 | 2024-02
Moving the second span to September removes the overlap. Eighteen months plus six equals twenty-four distinct months, the same union as the first sample but a different pattern. That is why the role notes are needed as well as the headline total. A combined month count can conceal whether roles were concurrent or consecutive. Preserve the original dates and explain concurrent work honestly rather than moving dates to produce a cleaner-looking timeline.
Sample C — boundary convention
Short placement | 2024-02 | 2024-02
Side project | 2024-02 | 2024-02
Two roles both labeled February cover one distinct calendar month, not two. An inclusive first/last month range always includes that month even when its two labels match. The tool cannot know whether either role lasted one day, several weeks or all of February. With a zero overlap review threshold, both rows are marked for review because they share the month; the mark is a date-reconciliation question, never an accusation about the applicant.
Optional AI formatting, never the calculation
Manual entry completes this tenure-span strip for free without signup. If available to you, the free AI Studio interface linked in the sources may format fictional or non-sensitive notes; external access may require an account. No API key or AI call is built into this tool. Free-tier content may be used to improve products. Review each cell and transcribe it to the labeled row schema; do not paste the JSON object into the row box.
Format only these fictional or non-sensitive notes for a tenure-span strip. Return strict JSON shaped as {"rows": [{"label": "string", "cells": ["string", "string"]}], "setting": "string"}. The columns are role label | first month YYYY-MM | last month YYYY-MM; the setting is Overlap review threshold in months. Keep all supplied strings and quantities exactly; do not calculate, infer missing entries, invent dates or add advice. If any required value is missing, return an empty rows array and ask me for it separately. I will verify every cell against my source and manually transcribe rows using vertical bars before running the local calculator.
An AI response is not executed, fetched or trusted as a result. Missing values remain questions; the strict local parser checks the rows you actually enter.