Skip to main content

Do this

Be specific about data fields

Track contacts with:
- Full name
- Email address
- Phone number
- Company name
- Job title
- LinkedIn profile URL

Specify field types when it matters

Track deals with:
- Deal name (text)
- Amount (currency)
- Close date (date)
- Probability (percentage)
- Status (new, negotiating, won, lost)
Common field types to specify:
  • Currency: “amount (currency)” or “price in dollars”
  • Date: “due date” or “close date”
  • Percentage: “probability (percentage)”
  • Options: “status (option A, option B, option C)”
  • Yes/No: “is active (yes/no)” or “completed (checkbox)“

Describe relationships clearly

Build a project system where:
- Projects have a name and description
- Each project has multiple tasks
- Tasks have a title, due date, and status
- Each task is assigned to one user

Request specific visualizations

Add a dashboard with:
- Total revenue card
- Number of deals card
- Pie chart showing deals by status
- Line chart showing monthly revenue trend

Define options explicitly

Status options: draft, pending review, approved, rejected
Priority levels: low, medium, high, critical

Don’t do this

Don’t reference other products

Build something like Asana
Make it work like Notion
Copy the Salesforce pipeline
Why: Gainable doesn’t know what features you want from those products. Describe the specific features you need.

Don’t use vague design terms

Make it modern
Keep it clean
Professional looking

Don’t request everything at once

Build a complete CRM with leads, contacts, companies,
deals, tasks, emails, calendar, reports, dashboards,
team management, permissions, notifications, and
mobile app with offline support.

Don’t assume Gainable knows your domain

Build a standard e-commerce checkout flow
Add the usual project management features

Updating existing apps

When modifying an app you’ve already built:

Reference existing elements

Add a due date field to the Task model

Specify where to make changes

On the deals page, add a filter dropdown for status

Build on what exists

Add a chart showing Tasks grouped by status

Asking questions vs requesting builds

Gainable can answer questions about your project without making changes.

To ask a question

How does the task filtering work?
What fields does the Deal model have?
Where is the dashboard code?

To request a change

Add a due date field to tasks
Change the dashboard to show monthly data
Fix the filter to include all statuses
Start questions with “how”, “what”, “where”, or “explain” to get information without triggering a build.

Recovery from mistakes

If something wasn’t built correctly:

Be specific about what’s wrong

The deal amount is showing without the dollar sign.
Format it as currency.

Describe what you expected

The chart should show deals grouped by status, but
it's showing them grouped by company. Change it to
group by status.

Quick reference

SituationBest Practice
Defining dataList all fields with types
Connecting dataExplicitly state relationships
Adding chartsName the chart type and what data it shows
Adding featuresUse feature names (kanban, chat, filter)
StylingReference theme names or specific colors
UpdatingReference existing elements by name
Fixing issuesDescribe what’s wrong and what you expected

Learn more