---
title: "Sales CRM App template: leads, accounts, pipeline | Kylon"
description: "A general sales CRM App template: leads with their own status and rating, one click conversion into account, contact and opportunity, a six stage pipeline, a stage board and a forecast dashboard. Paste one instruction and your agent builds it."
url: "https://kylon.io/fork/crm"
language: "en"
---

[Kylon home](https://kylon.io/) [Start free](https://app.kylon.io/sign-up)

[Back to the Apps](https://kylon.io/apps)

Post

General CRMApp · Sales · sample data

# Take an enquiry from first contact to closed, without losing where it came from

Enquiries arrive in a shared inbox, the pipeline lives in a spreadsheet, and the reason a deal exists sits in one person's memory. This template separates the two halves the way a CRM is supposed to: an enquiry is a lead with a status and a rating and nothing else, and it becomes an account, a contact and an opportunity only when someone converts it. The objects are the Salesforce standard ones, so the fields already match what a sales team expects to find.

![Pipeline list in the Sales CRM template, with a source lead column next to each opportunity](https://kylon.io/_next/image?url=%2Ftemplate-assets%2Fcrm%2Fpipeline.png&w=3840&q=75&dpl=dpl_JQZYJoZ9Ri4sZ3AQx8obn8f4FAGt)

The pipeline. One line per opportunity, and the lead it was converted from in the second column.

[Make your own](https://app.kylon.io/sign-up?build_intent=Download+https%3A%2F%2Fkylon.io%2Fapp-templates%2Fsales-crm-template.zip+and+build+me+a+sales+CRM+from+it.+Unpack+it%2C+read+README.md+and+TEMPLATE_GUIDE.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+the+source+into+the+checkout%2C+replace+the+placeholder+app+id+and+base+URL%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand.+The+numbered+files+in+db%2Fmigrations+apply+themselves+in+order+to+a+new+empty+database+and+seed+the+demo+accounts%2C+leads+and+opportunities%2C+so+the+leads+list+and+the+pipeline+are+full+on+the+first+open.+Leave+those+rows+in.+Then+stop.+Do+not+import+our+real+customers+and+do+not+connect+email+or+calendar.+Ask+me+before+anything+real+goes+in.) [Instruction](https://kylon.io/fork/crm#instruction) [Share](https://x.com/intent/tweet?text=General%20CRM%3A%20Take%20an%20enquiry%20from%20first%20contact%20to%20closed%2C%20without%20losing%20where%20it%20came%20from.%20Make%20your%20own%20on%20Kylon%3A&url=https%3A%2F%2Fkylon.io%2Ffork%2Fcrm)

What it puts on screen

-   An enquiry is not a deal yet. A lead carries a status, a rating, a source and an owner, and no amount. Enquiries that go nowhere stay out of the pipeline instead of inflating it, and the open list hides everything already converted.
-   Conversion writes three records at once. Converting a lead creates or links the account, creates or links the contact, opens the opportunity at New with the source and rating carried over, then marks the lead Qualified. It is one transaction, and converting the same lead twice is refused rather than duplicated.
-   The deal remembers where it came from. The pipeline has a source lead column, and the full enquiry record opens inside the opportunity panel: who asked, what they said, when it converted. Deals typed straight into the pipeline say so.
-   One next step in front of the owner. Every opportunity holds one next step with a due date and its own tasks, and the dashboard leads with the ones that are late, alongside open pipeline, weighted forecast and what closes this month.

The screens

![Leads list filtered to open enquiries, with status, rating, source and owner](https://kylon.io/_next/image?url=%2Ftemplate-assets%2Fcrm%2Fleads.png&w=3840&q=75&dpl=dpl_JQZYJoZ9Ri4sZ3AQx8obn8f4FAGt)

Leads. Open enquiries by default, with status, rating, source and owner filtered from the column headers.

![Opportunity panel showing the converted lead inside the details section](https://kylon.io/_next/image?url=%2Ftemplate-assets%2Fcrm%2Fopportunity.png&w=3840&q=75&dpl=dpl_JQZYJoZ9Ri4sZ3AQx8obn8f4FAGt)

The opportunity panel. The lead that produced the deal opens inside it, so nobody leaves the pipeline to read the enquiry.

![Stage board with open deals grouped into six columns](https://kylon.io/_next/image?url=%2Ftemplate-assets%2Fcrm%2Fboard.png&w=3840&q=75&dpl=dpl_JQZYJoZ9Ri4sZ3AQx8obn8f4FAGt)

The same deals as a board. Six stages, with the amount in each column.

![Dashboard with open pipeline, weighted forecast, deals closing this month and overdue next steps](https://kylon.io/_next/image?url=%2Ftemplate-assets%2Fcrm%2Fdashboard.png&w=3840&q=75&dpl=dpl_JQZYJoZ9Ri4sZ3AQx8obn8f4FAGt)

The dashboard. Open pipeline, weighted forecast, what closes this month, and the next steps that are already late.

The instruction behind it

Paste this at the agent in your own workspace. The instruction carries the archive URL, so the agent fetches it itself, and only the first time.

Download https://kylon.io/app-templates/sales-crm-template.zip and build me a sales CRM from it. Unpack it, read README.md and TEMPLATE\_GUIDE.md, and follow them: create the App, provision its database, copy the source into the checkout, replace the placeholder app id and base URL, then push a draft and send me the link. Never run SQL by hand. The numbered files in db/migrations apply themselves in order to a new empty database and seed the demo accounts, leads and opportunities, so the leads list and the pipeline are full on the first open. Leave those rows in. Then stop. Do not import our real customers and do not connect email or calendar. Ask me before anything real goes in.

## Discover more

Creator ManagementApp · sample data

Source creators, track every post, and see what each one returned

[![Creator roster with agency pitched and self sourced creators in one table](https://kylon.io/_next/image?url=%2Ftemplate-assets%2Fcreator-crm%2Fthumb.png&w=3840&q=75&dpl=dpl_JQZYJoZ9Ri4sZ3AQx8obn8f4FAGt)](https://app.kylon.io/sign-up?build_intent=Build+me+a+creator+CRM+from+https%3A%2F%2Fkylon.io%2Fapp-templates%2Fcreator-crm-app-template.zip%0A%0ADownload+it%2C+read+setup%2F01-build-the-app.md+and+app%2FTEMPLATE_GUIDE.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+app%2F.+into+the+checkout%2C+set+the+app+id%2C+name+and+base+URL%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand%2C+db%2Fmigrations+applies+itself%2C+and+it+seeds+six+invented+creators+so+the+roster+is+full+on+the+first+open.+Leave+those+rows+in.%0A%0AThen+stop.+Do+not+collect+anything+real+and+do+not+create+the+workflows.+Ask+me+whether+to+start+filling+in+real+creators%2C+and+tell+me+that+is+where+token+spend+begins.)

[Make your own](https://app.kylon.io/sign-up?build_intent=Build+me+a+creator+CRM+from+https%3A%2F%2Fkylon.io%2Fapp-templates%2Fcreator-crm-app-template.zip%0A%0ADownload+it%2C+read+setup%2F01-build-the-app.md+and+app%2FTEMPLATE_GUIDE.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+app%2F.+into+the+checkout%2C+set+the+app+id%2C+name+and+base+URL%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand%2C+db%2Fmigrations+applies+itself%2C+and+it+seeds+six+invented+creators+so+the+roster+is+full+on+the+first+open.+Leave+those+rows+in.%0A%0AThen+stop.+Do+not+collect+anything+real+and+do+not+create+the+workflows.+Ask+me+whether+to+start+filling+in+real+creators%2C+and+tell+me+that+is+where+token+spend+begins.) [Screens](https://kylon.io/apps/creator-crm) [Share](https://x.com/intent/tweet?text=Creator%20Management.%20Make%20your%20own%20on%20Kylon%3A&url=https%3A%2F%2Fkylon.io%2Ffork%3Fw%3Dapps%2Fcreator-crm)

Sampling DeskApp · sample data

Track every sample from shipped to posted, and the sales it brought

[![Work queue listing overdue samples ranked by creator GMV](https://kylon.io/_next/image?url=%2Ftemplate-assets%2Fsampling-desk%2Fthumb.png&w=3840&q=75&dpl=dpl_JQZYJoZ9Ri4sZ3AQx8obn8f4FAGt)](https://app.kylon.io/sign-up?build_intent=Download+https%3A%2F%2Fkylon.io%2Fapp-templates%2Fsampling-desk-app-template.zip+and+build+me+a+TikTok+Shop+sampling+desk+from+it.+Unpack+it%2C+read+README.md+and+setup%2F01-build-the-app.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+app%2F.+into+the+checkout%2C+replace+the+placeholder+app+id+and+hosting+slug%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand.+db%2Fmigrations+applies+itself%2C+and+the+last+file+seeds+14+invented+creators+and+24+samples+so+the+work+queue+has+a+real+backlog+on+the+first+open.+Leave+those+rows+in.+Then+stop.+Do+not+import+anything+real%2C+do+not+create+the+workflows%2C+and+do+not+set+CHASE_WEBHOOK_URL.+Ask+me+whether+to+start+loading+our+own+creators+and+samples.)

[Make your own](https://app.kylon.io/sign-up?build_intent=Download+https%3A%2F%2Fkylon.io%2Fapp-templates%2Fsampling-desk-app-template.zip+and+build+me+a+TikTok+Shop+sampling+desk+from+it.+Unpack+it%2C+read+README.md+and+setup%2F01-build-the-app.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+app%2F.+into+the+checkout%2C+replace+the+placeholder+app+id+and+hosting+slug%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand.+db%2Fmigrations+applies+itself%2C+and+the+last+file+seeds+14+invented+creators+and+24+samples+so+the+work+queue+has+a+real+backlog+on+the+first+open.+Leave+those+rows+in.+Then+stop.+Do+not+import+anything+real%2C+do+not+create+the+workflows%2C+and+do+not+set+CHASE_WEBHOOK_URL.+Ask+me+whether+to+start+loading+our+own+creators+and+samples.) [Screens](https://kylon.io/apps/sampling-desk) [Share](https://x.com/intent/tweet?text=Sampling%20Desk.%20Make%20your%20own%20on%20Kylon%3A&url=https%3A%2F%2Fkylon.io%2Ffork%3Fw%3Dapps%2Fsampling-desk)

Remodeling CRMApp · sample data

Carry a renovation lead from the first call to the paid design fee

[![Pipeline list of renovation projects with stage, next action, owner and due date](https://kylon.io/_next/image?url=%2Ftemplate-assets%2Fremodeling-crm%2Fthumb.png&w=3840&q=75&dpl=dpl_JQZYJoZ9Ri4sZ3AQx8obn8f4FAGt)](https://app.kylon.io/sign-up?build_intent=Download+https%3A%2F%2Fkylon.io%2Fapp-templates%2Fremodeling-crm-template.zip+and+build+me+a+remodeling+sales+CRM+from+it.+Unpack+it%2C+read+README.md+and+TEMPLATE_GUIDE.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+the+source+into+the+checkout%2C+replace+the+placeholder+app+id+and+base+URL%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand.+The+numbered+files+in+db%2Fmigrations+apply+themselves+in+order+to+a+new+empty+database+and+seed+the+demo+projects%2C+so+the+pipeline+and+the+board+are+full+on+the+first+open.+Leave+those+rows+in.+Then+stop.+Do+not+import+our+real+clients%2C+do+not+connect+accounting+or+estimating%2C+and+ask+me+before+anything+real+goes+in.)

[Make your own](https://app.kylon.io/sign-up?build_intent=Download+https%3A%2F%2Fkylon.io%2Fapp-templates%2Fremodeling-crm-template.zip+and+build+me+a+remodeling+sales+CRM+from+it.+Unpack+it%2C+read+README.md+and+TEMPLATE_GUIDE.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+the+source+into+the+checkout%2C+replace+the+placeholder+app+id+and+base+URL%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand.+The+numbered+files+in+db%2Fmigrations+apply+themselves+in+order+to+a+new+empty+database+and+seed+the+demo+projects%2C+so+the+pipeline+and+the+board+are+full+on+the+first+open.+Leave+those+rows+in.+Then+stop.+Do+not+import+our+real+clients%2C+do+not+connect+accounting+or+estimating%2C+and+ask+me+before+anything+real+goes+in.) [Screens](https://kylon.io/apps/remodeling-crm) [Share](https://x.com/intent/tweet?text=Remodeling%20CRM.%20Make%20your%20own%20on%20Kylon%3A&url=https%3A%2F%2Fkylon.io%2Ffork%3Fw%3Dapps%2Fremodeling-crm)

Recruiting WorkspaceApp · sample data

Take a role from approved to first day without a spreadsheet in the middle

[![Recruiting overview with the hiring pipeline by stage](https://kylon.io/_next/image?url=%2Ftemplate-assets%2Fhiring%2Fthumb.png&w=3840&q=75&dpl=dpl_JQZYJoZ9Ri4sZ3AQx8obn8f4FAGt)](https://app.kylon.io/sign-up?build_intent=Download+https%3A%2F%2Fkylon.io%2Fapp-templates%2Fhiring-template.zip+and+build+me+an+internal+recruiting+workspace+from+it.+Unpack+it%2C+read+README.md+and+TEMPLATE_GUIDE.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+the+source+into+the+checkout%2C+replace+the+placeholder+app+id+and+base+URL%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand.+The+numbered+files+in+db%2Fmigrations+apply+themselves+in+order+to+a+new+empty+database+and+seed+the+demo+jobs%2C+applicants%2C+interviews%2C+offers+and+onboarding%2C+so+the+pipeline+is+full+on+the+first+open.+Leave+those+rows+in.+Then+stop.+Do+not+import+our+real+applicants%2C+do+not+connect+our+mailbox+or+calendar%2C+and+ask+me+before+anything+real+goes+in.)

[Make your own](https://app.kylon.io/sign-up?build_intent=Download+https%3A%2F%2Fkylon.io%2Fapp-templates%2Fhiring-template.zip+and+build+me+an+internal+recruiting+workspace+from+it.+Unpack+it%2C+read+README.md+and+TEMPLATE_GUIDE.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+the+source+into+the+checkout%2C+replace+the+placeholder+app+id+and+base+URL%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand.+The+numbered+files+in+db%2Fmigrations+apply+themselves+in+order+to+a+new+empty+database+and+seed+the+demo+jobs%2C+applicants%2C+interviews%2C+offers+and+onboarding%2C+so+the+pipeline+is+full+on+the+first+open.+Leave+those+rows+in.+Then+stop.+Do+not+import+our+real+applicants%2C+do+not+connect+our+mailbox+or+calendar%2C+and+ask+me+before+anything+real+goes+in.) [Screens](https://kylon.io/apps/hiring) [Share](https://x.com/intent/tweet?text=Recruiting%20Workspace.%20Make%20your%20own%20on%20Kylon%3A&url=https%3A%2F%2Fkylon.io%2Ffork%3Fw%3Dapps%2Fhiring)

Travel DeskApp · sample data

Take a custom trip from the first enquiry to a priced, approved proposal

[![Travel Desk overview with the trip pipeline by stage](https://kylon.io/_next/image?url=%2Ftemplate-assets%2Ftravel-desk%2Fthumb.webp&w=3840&q=75&dpl=dpl_JQZYJoZ9Ri4sZ3AQx8obn8f4FAGt)](https://app.kylon.io/sign-up?build_intent=Download+https%3A%2F%2Fkylon.io%2Fapp-templates%2Ftravel-desk-template.zip+and+build+me+a+travel+agency+trip+desk+from+it.+Unpack+it%2C+read+README.md+and+TEMPLATE_GUIDE.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+the+source+into+the+checkout%2C+replace+the+placeholder+app+id+and+base+URL%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand.+The+numbered+files+in+db%2Fmigrations+apply+themselves+in+order+to+a+new+empty+database+and+seed+the+demo+trips%2C+travellers%2C+suppliers%2C+quotes%2C+proposals%2C+bookings+and+departure+checks%2C+so+the+pipeline+is+full+on+the+first+open.+Leave+those+rows+in.+Then+stop.+Do+not+import+our+real+clients%2C+do+not+connect+our+mailbox%2C+calendar+or+payment+accounts%2C+and+ask+me+before+anything+real+goes+in.)

[Make your own](https://app.kylon.io/sign-up?build_intent=Download+https%3A%2F%2Fkylon.io%2Fapp-templates%2Ftravel-desk-template.zip+and+build+me+a+travel+agency+trip+desk+from+it.+Unpack+it%2C+read+README.md+and+TEMPLATE_GUIDE.md%2C+and+follow+them%3A+create+the+App%2C+provision+its+database%2C+copy+the+source+into+the+checkout%2C+replace+the+placeholder+app+id+and+base+URL%2C+then+push+a+draft+and+send+me+the+link.+Never+run+SQL+by+hand.+The+numbered+files+in+db%2Fmigrations+apply+themselves+in+order+to+a+new+empty+database+and+seed+the+demo+trips%2C+travellers%2C+suppliers%2C+quotes%2C+proposals%2C+bookings+and+departure+checks%2C+so+the+pipeline+is+full+on+the+first+open.+Leave+those+rows+in.+Then+stop.+Do+not+import+our+real+clients%2C+do+not+connect+our+mailbox%2C+calendar+or+payment+accounts%2C+and+ask+me+before+anything+real+goes+in.) [Screens](https://kylon.io/apps/travel-desk) [Share](https://x.com/intent/tweet?text=Travel%20Desk.%20Make%20your%20own%20on%20Kylon%3A&url=https%3A%2F%2Fkylon.io%2Ffork%3Fw%3Dapps%2Ftravel-desk)

## How Make your own works

1.  1Press Make your ownKylon opens with this work loaded. New here, you sign up first.
2.  2Your agents make itThey use your name, your data and your people.
3.  3Check before it goes outEmails and messages wait as drafts until someone on your team sends them.
