How to Make an ATS Resume With Gemini
Here's how to make an ATS resume with Gemini: paste your current resume and the job listing into one tightly bounded prompt, then make Gemini strip out its own decoration before it hands you anything. Gemini is fast at the rewrite. Left unsupervised, it does two things that wreck a resume — it over-formats (markdown headers, bold everywhere, fancy bullet glyphs, emoji) and it embellishes, inflating claims your experience doesn't back. The prompt below shuts both down. What it still can't do is see the live listing's ATS-weighted keywords or score your draft against the parser filtering you.
You don't need a prompt-engineering course. You need one system prompt, one user prompt, and an honest read on where the output stops being enough.
Key Takeaways
- Gemini is quick at the rewrite layer — verbs, structure, pulling listing language into bullets your experience supports.
- Its two default failure modes are over-formatting and embellishment. Both break ATS parsers and recruiter trust.
- The system prompt forces plain text — no markdown, no bold, no symbols, no emoji — and bans any claim the source resume doesn't support.
- Drop the prompt into a Gem (or the system-instruction field) so the guardrails apply to every job automatically.
- Gemini still can't see the live listing or score against the ATS. That's the 30% you do by hand.
Why Gemini is good at the resume layer — and the one thing it can't see
Gemini is a strong, fast writer. Hand it your resume and a job listing as text, and it will tighten your verbs, turn duties into accomplishments, and re-point your summary at the role in under a minute. The reason it needs a different prompt from ChatGPT or Claude isn't the rewrite quality — it's the cleanup. Gemini's instinct is to make output look polished: bolded section labels, header styling, bulleted lists with decorative symbols, the occasional emoji. It also leans toward confident, upgraded phrasing that quietly stretches what you actually did.
That's the 70% it nails, wrapped in two habits you have to override.
Here's the 30% it can't reach at all. Gemini can't browse the live job listing — you paste the text in. More important, it has no line of sight into the Applicant Tracking System scoring your submission. The parser runs on the employer's side. It weights keywords by placement, frequency, and proximity, and Gemini can only guess at that weighting. According to the Bureau of Labor Statistics, most occupations see enough applicants that employers filter with software first and read second. Gemini rewrites the language a recruiter eventually reads. It never touches the filter that decides whether a recruiter sees you at all.
The Gemini ATS resume system prompt
This is the instruction layer. It sets Gemini's role, its truthfulness rules, and — the part that matters most for this model — explicit guardrails against over-formatting and embellishment. Put it in the system-instruction field, or build a reusable Gem with this as the instructions so the rules ride along on every job you run.
You are an expert resume writer and ATS (Applicant Tracking System) analyst. Your job is to rewrite a candidate's existing resume so it mirrors a specific job description's language while staying strictly truthful and machine-readable.
You will receive two inputs: the candidate's current resume, and the full text of a target job listing.
ANALYZE FIRST (do not show this work):
- Identify the 8 to 12 most emphasized terms in the listing (skills, tools, methods, recurring phrases).
- For each, decide whether the resume shows real evidence. Use only the supported terms.
- Choose the section order that puts the strongest matched experience nearest the top.
THEN rewrite the resume. Hard rules:
- Never fabricate. Do not invent employers, titles, dates, metrics, scope, or skills.
- Quantify only where the source resume already supports a number. No number in the source means no number in the output.
- Use listing language only where the candidate's real experience backs it. Never claim a term you marked as unsupported.
- Use standard section headings only: Summary, Skills, Experience, Education.
- Lead every Experience line with a strong action verb. Vary verbs; repeat none more than twice.
NO-EMBELLISHMENT RULES (these override your instinct to sound impressive):
- Do not upgrade scope. "Helped with" stays "helped with"; do not promote it to "led" or "owned."
- Do not add adjectives the source does not justify (no "award-winning," "industry-leading," "seasoned").
- Do not infer seniority, team size, budget, or impact that is not stated in the source.
- If a line is thin, leave it thin. A truthful weak bullet beats an impressive false one.
FORMATTING RULES (these override your instinct to format prettily — ATS parsers break on decoration):
- Output PLAIN TEXT ONLY. No Markdown of any kind.
- No bold, no italics, no asterisks, no underscores, no backticks, no headers (#).
- No tables, no columns, no text boxes, no graphics, no horizontal rules.
- No emoji and no special/decorative characters of any kind.
- Use a single hyphen (-) and one space to start each bullet. Nothing else.
- Section headings are typed as plain words on their own line (e.g., the word Experience), never styled.
Output the rewritten resume as plain text, then on a new line print "GAPS:" followed by the listing terms with no evidence in the resume, so the candidate knows what NOT to claim.
The user prompt
This is where you paste your two inputs. Keep the labels exactly as written so Gemini doesn't blend the listing's requirements into your work history.
Rewrite my resume to target the job below, following your system instructions exactly. Plain text only — no Markdown, no bold, no symbols, no emoji — and no claims my resume does not support. End with the GAPS list.
RESUME:
[PASTE YOUR RESUME]
JOB DESCRIPTION:
[PASTE THE JOB DESCRIPTION HERE]
How to run it
You have two ways to use this, and the second is worth the five minutes if you're applying to more than a couple of jobs.
One-off. Open a new chat. Paste the system prompt as your first message, then send the user prompt with your resume and the listing pasted in. Gemini analyzes silently, then writes the plain-text draft and the GAPS list.
Reusable (recommended). Build a Gem and put the system prompt in its instructions, or set it in the system-instruction field if you're working through the API or AI Studio. Now the role, the no-embellishment rules, and the plain-text guardrails apply to every conversation automatically. For each new job, you only send the user prompt with a fresh paste. That matters more with Gemini than with other models, because the formatting and embellishment guardrails are exactly what it forgets first when you skip them.
The honest friction
The method works. Here's the tedious part nobody mentions — the part that's the whole reason a $4.99 tool exists.
You re-prompt for every single job. A resume tailored to one listing is mis-tailored for the next. New role, new weighted terms, new draft. That's a fresh paste-and-run every time you apply.
You're the judge — there's no score. Gemini tells you what it changed. It can't tell you whether the draft beats the parser, because it can't see the parser. You read the output, cross-reference the listing by hand, and decide if it's good enough. No number, no confidence reading, just your gut.
The formatting and the embellishment will betray you. Even with the guardrails, Gemini drifts back toward bold headers, bullet glyphs, and upgraded phrasing. Resume parsers are well-documented to mangle that kind of structure — reading styled headers as garbage or dropping decorated lines entirely. The inflated claims survive parsing fine and then blow up in the interview when you can't back them. Harvard Business Review's research on hiring argues the stakes are even higher than that: ATS-driven processes filter out qualified candidates before a human ever reads the resume, so a format that breaks the parser removes you from consideration entirely, regardless of how good the underlying experience is. So every run, do two checks: paste the output into a plain .txt file and confirm no markdown or symbols survived, then reread every bullet and cut anything that's bigger than what you actually did.
No interview script. A tailored resume gets you in the room. It does nothing for the questions waiting there. You're on your own for the conversation.
If you'd rather skip the per-job grind, the same paste — your resume plus the listing — runs through Gate Crashers and comes back as three resume versions built around that specific listing, plus a 12-question interview script from the same context. Pay once, no subscription. $4.99. Files are yours, no card on file.
FAQ
Can Gemini make an ATS-friendly resume? Yes, for the language and structure layer. Gemini rewrites bullets into accomplishments, aligns your summary to the role, and — with the right guardrails — outputs plain text that parses cleanly. It can't see the live listing or score your draft against the actual ATS, so you still do a manual keyword pass after.
Why does the Gemini resume prompt fight so hard against formatting? Because Gemini's default is to look polished — bold headers, fancy bullets, the occasional emoji — and most ATS parsers choke on exactly that. The prompt forces plain text so the parser reads your resume top to bottom as one clean column instead of scrambling on the decoration.
Why the no-embellishment rules? Gemini tends to upgrade phrasing and inflate scope to sound impressive. That reads well until a recruiter asks you to back a claim you can't. The rules pin every line to what your source resume actually supports, so the draft stays truthful.
Is Gemini better than ChatGPT or Claude for this? Each model has a different strength and a different failure mode, which is why each gets its own prompt. See the ChatGPT version and the Claude version — same backbone, tuned to how each one behaves. Gemini's prompt leans hardest on anti-formatting and anti-embellishment guardrails.
Is one Gemini prompt enough, or do I still need a paid tool? The prompt gets you roughly 70% — the rewrite. The last 30% is the per-listing keyword cross-reference and the parser weighting Gemini can't see. You can do that by hand for every job, which is 20 to 30 minutes each, or run a session-based tool that handles it. Both are honest paths.
Gemini writes the rewrite — fast, then over-formatted and inflated unless you bind it. The parser scores the last 30%. Run both passes, and don't ship the raw output without flattening it and cutting the claims you can't stand behind.
