Setting up a Custom GPT

Create a custom GPT in ChatGPT to help you generate a Functional Requirements Document (FRD)

·7 min read·
ChatGPTLLMPrompt EngineeringContext

This building block will teach you about custom GPTs by showing you how I set one up to help me produce an FRD.

Outcomes

  • An understanding of how to create custom GPT's, how they work, and what they're good for
  • A reusable GPT you can run for any new idea
  • A consistent FRD structure
  • Faster "idea-to-build" speed with fewer scope misunderstandings

10-second custom GPT summary

A custom GPT is a tailored version of ChatGPT configured with specific instructions, tools, and knowledge to reliably handle a particular workflow—so users get faster, more consistent results with less prompting and fewer errors.

Why this building block matters

This is a workflow efficiency and output quality move: instead of rewriting prompts or feeding in files every time you need to do a certain task, you start with the custom GPT that's already configured with the context and instructions it needs to perform a task well with high quality outputs.

  • Consistency at scale: Bakes your preferred tone, steps, and rules into the GPT so results don’t depend on how much detail you feel like providing
  • Faster time-to-value: Reduces back-and-forth prompting by starting from a workflow-specific “default brain.”
  • Better outcomes, fewer errors: Constrains behavior to what matters (and what’s allowed), improving quality and safety.
  • Tool + data leverage: Connects to internal tools/knowledge so it can act and retrieve accurately, not just “chat.”

If you're building fast, you don't need more motivation — you need pre-built tools for each task.


Prerequisites

Before you start, make sure you have:

  • A ChatGPT Plus or Pro account

What you're building (spec)

FieldValue
NameFRD Interviewer
JobInterview → Draft FRD.md
InputsYour answers to a short guided questionnaire
OutputExactly one Markdown document containing the full FRD

Output rules

When the GPT generates, it must:

  • Output only the FRD (no commentary)
  • Output the FRD in one fenced markdown code block
  • Use numbered requirements: FR-1, FR-2, ... and NFR-1, NFR-2, ...
  • Mark unknowns as TBD and list them in Open Questions

Step-by-step: create the Custom GPT

You'll create this in the ChatGPT web app.

1) Open the GPT Builder

  1. After loading http://chatGPT.com, go to Explore GPTs
  2. Click Create
  3. Switch to the Configure tab

Tip: You can keep this GPT private or "Anyone with link" so you can share it later.


2) Configure the basics

FieldValue
NameFRD Interviewer
DescriptionInterviews you about a product MVP and outputs a clean FRD.md in Markdown.
Iconoptional

3) Capabilities (keep it lean)

For an FRD generator, you typically want no tools:

  • Leave browsing OFF (unless you specifically want competitor research baked in)
  • Leave image generation OFF

The goal is consistent structure and fast output.


4) Paste the core Instructions

In the Instructions field, paste the following exactly.

You are "FRD Interviewer," an expert product + engineering requirements writer optimized for SPEED and CLARITY.
 
Primary outcome:
- Ask the user targeted questions to collect inputs for an MVP FRD.
- Do NOT generate the FRD until all required fields are collected (or the user explicitly says "generate with assumptions").
- When generating: output ONE single Markdown document (no preamble) in a fenced ```markdown block.
 
Interaction mode:
1) Start by showing a short checklist of required inputs (with empty slots).
2) Ask ONE question at a time.
3) Use smart branching: only ask follow-ups when relevant.
4) After every 3–5 questions, briefly summarize captured decisions and list remaining gaps.
5) If the user is unsure, offer 2–4 common options, then ask them to pick.
 
Required inputs (must capture before drafting):
- Project name + one-line MVP statement
- Target users + primary user problem
- MVP goal + explicit non-goals
- Core user journey (happy path)
- Functional requirements (at least 5)
- Non-functional requirements (at least 5, e.g., performance, security, reliability)
- Data/integrations (even "none")
- Success metrics + analytics events
- Acceptance criteria for MVP release
- Risks + open questions
 
Output rules (when drafting):
- Output ONLY the FRD markdown in one fenced ```markdown block.
- Use clear headings and bullet points.
- Requirements must be numbered (FR-1, FR-2…; NFR-1…).
- Every major section should be concise, but complete.
- If info is missing, mark it clearly as TBD and list it again in "Open Questions."
 
Tone:
- Efficient, direct, slightly founder-y, no fluff.

5) Add Conversation Starters

Add a few so it’s one-click usable:

Interview me and generate an MVP FRD. My idea: …

Create an FRD.md for: …

Generate with assumptions. I’m in a rush. Here’s the concept: …

6) (Optional) Upload a template as Knowledge

If the builder shows a Knowledge section, upload a template file so your GPT stays consistent.

Create a local file named frd-template.md with this content:

---
title: "FRD — {{PROJECT_NAME}}"
version: "0.1"
owner: "{{OWNER}}"
last_updated: "{{DATE}}"
status: "Draft"
---

# 1. Overview
## 1.1 One-line MVP statement
## 1.2 Target users
## 1.3 User problem
## 1.4 MVP goal
## 1.5 Non-goals

# 2. Scope
## 2.1 In scope
## 2.2 Out of scope

# 3. User Journey (Happy Path)
1.
2.
3.

# 4. Functional Requirements
- FR-1:
- FR-2:
- FR-3:
- FR-4:
- FR-5:

# 5. Non-Functional Requirements
- NFR-1:
- NFR-2:
- NFR-3:
- NFR-4:
- NFR-5:

# 6. Data, Integrations, and Dependencies
## 6.1 Data inputs/outputs
## 6.2 Integrations/APIs
## 6.3 Dependencies

# 7. Analytics and Success Metrics
## 7.1 Success metrics
## 7.2 Event tracking plan

# 8. Acceptance Criteria (MVP Release)
- AC-1:
- AC-2:
- AC-3:

# 9. Risks and Mitigations
- Risk:
  - Mitigation:

# 10. Open Questions
- Q1:
- Q2:

7) Test it (fast checklist)

In the Preview pane, run two tests:

Test A — ideal inputs

Give a clear idea + answer everything

Confirm output is a single FRD.md in one markdown code block

Test B — messy inputs

Be vague on purpose

Confirm it:

offers common options

keeps a “missing inputs” checklist

marks unknowns as TBD

does not generate early

8) Publish

Choose one:

Only me (private, safest)

Anyone with link (best for sharing with friends/readers)

Public (only if you’re comfortable)

The interview flow (the exact questions it should ask)

A good FRD interview is short and deterministic. Your GPT should generally ask:

Project name

One-sentence MVP statement

Primary user

Primary user's pain

MVP goal

Explicit non-goals

Happy-path journey (3–7 steps)

Top 5–10 must-have functional requirements

Roles/permissions (if relevant)

Data in/out

Integrations/dependencies

Non-functional requirements (perf, security, reliability, privacy, accessibility, SEO)

Analytics events

Success metrics

Acceptance criteria for MVP release

Risks

Open questions

Example: how you’ll use it

Open your custom GPT and paste:

“Interview me and generate an MVP FRD. Idea: A personal-brand site assistant that can answer questions about my projects and writing.”

Answer the questions. When done, copy the markdown output into your repo as:

FRD.md (root), or

/docs/FRD.md

Success Criteria for this Building Block

You’ll know this building block is working when:

You can produce a solid MVP FRD in < 15 minutes

The FRD has clear scope + non-goals

Requirements are numbered and testable

MVP acceptance criteria are unambiguous

The GPT output is consistent across projects