Introduced in Summer ’23 and launched in Spring ’24, Prompt Builder (formerly Prompt Studio) enables every admin to become a skilled prompt engineer. This tool simplifies the creation, testing, and refinement of prompts, making it accessible even to those without technical expertise. A good prompt is clear, concise, and free of technical jargon, using everyday language to encourage natural conversation. Effective prompts set a specific context or role for the AI model, such as acting as a customer support agent or a marketing executive.
To create the best prompts, experimenting with different styles and gathering user feedback is essential. Consistency in writing style and clearly separating context from instructions ensure reliable responses. By following these guidelines, admins can leverage AI to improve workflows and customer interactions. The following five prompt templates will help you get started, providing a foundation for crafting effective and impactful prompts.
1. Nudge for Follow-Up
This prompt template is designed to help a sales executive create a personalized follow-up email to a prospect who hasn’t responded to a previous message. It uses input variables to automatically insert specific details about the sender, recipient, and product, ensuring the email is tailored and relevant. Here’s how it works:
- Role and personalization: The template starts by defining the role of the sender (sales executive) and personalizing the email with the names and company details of both the sender and the recipient.
- Context and instructions: It then provides clear instructions on how to structure the email. This includes:
- Addressing the recipient by their first name.
- Avoiding common well-wishes at the beginning of the email.
- Focusing on following up regarding a specific product.
- Encouraging response: The template guides the sales executive to indirectly encourage the recipient to respond by offering to address any questions or concerns.
- Call to action: It concludes with a clear call to action, asking the recipient to attend a short meeting and providing a placeholder for the meeting time that needs to be personalized later.
- Subject line: Finally, it instructs the generation of a subject line that is likely to increase the open rate, ensuring it is relevant to the email’s content.
By following these instructions, the template ensures that the follow-up email is professional, personalized, and effective in prompting a response from the prospect.
You are a Sales Executive and your name is {!$Input:Sender.Name} from an organization called {!$Input:Sender.CompanyName}. Your prospect is {!$Input:Recipient.Name}, who is the {!$Input:Recipient.Title}, from the company called {!$Input:Recipient.Company}. Your prospect {!$Input:Recipient.Name} didn’t respond to your previous email.
When I ask you to generate a follow-up email to your prospect you must strictly follow my instructions below.
Instructions: “””
The salutation must only contain the recipient’s first name.
You must strictly not use “I hope this email finds you well” ,”I hope this email finds you doing well”, or any other variation that expresses well-wishes for the recipient’s well-being to open the email.
Create a follow-up email conveying that you are checking in to follow up on your previous email and see if the prospect has any questions or concerns about {!$Input:Product2.Name} that you can help address.
Product name: {!$Input:Product2.Name}
Indirectly encourage your prospect {!$Input:Recipient.Name} to respond to your email by showing that you are willing to answer any questions they may have.
End the email with a clear call to action for {!$Input:Recipient.Name} to attend a short meeting. In a sentence, give a meeting slot with the placeholder [Provide: {DATE AND TIME}] for your prospect to choose from. You must leave the placeholder [Provide: {DATE AND TIME}] blank, because the human must personalize this placeholder. You need to ask {!$Input:Recipient.Name} if [Provide: {DATE AND TIME}] works for them.
Generate a subject line that can increase open rate using words and content that is related to the email body content.
“””
Now generate the follow-up email to your prospect.
2. Lead Summary
This prompt template is designed to generate a concise and formatted HTML summary of a Lead record without using any CSS or code block formatting. It uses specific instructions to ensure that the output is well-structured and relevant, only including data that is provided and meaningful. Here’s how it works:
- Input data and structure
- The template takes input data, such as the lead’s name, company, job title, creation date, lead source, status, lead score, and activities.
- It uses this data to generate an HTML summary with sections titled “Summary”, “Status”, and “Activities”.
- Summary section
- The Summary section includes a clickable title linking to the Lead’s record URL.
- This section summarizes the other key details about the lead, such as the lead’s name, company, job title, creation date, and lead source, in a paragraph format.
- Status section
- The Status section includes the current status of the lead and the lead score if they are provided. If these values are not provided or are placeholders, this section is omitted.
- Activities section
- The Activities section summarizes the lead’s activities and meetings. If there are no upcoming meetings and only past meetings, it mentions the last meeting date.
- If no activities are present, this section is excluded.
- Formatting rules
- Sections without relevant data are not included.
- Each section has a bold heading wrapped in tags.
- Descriptions are concise, in the third person, and limited to three sentences per paragraph.
- Important items like dates, names, or titles are italicized.
- Dates are formatted as “Month Date, Year”, and monetary values use appropriate currency symbols.
- Numbers lower than 10 are spelled out.
- Output
- The final output is formatted as HTML rich text, adhering to the specified instructions to create a clear, professional, and easy-to-read summary of the Lead record.
Using the details below, generate an output formatted as HTML rich text.
Instructions:
“””
Summarize the Lead record based on the data below.
Do not generate any CSS. Do not generate code block formatting.
If a key does not have any related name value pairs, then do not include that key in your summary. Sections must not be included if all of its related keys do not have any values or have placeholder values. For example, if there is no status provided in the data, then there should not be a Status section. Keys that have no value or placeholder values such as “PROVIDE:” followed by the key name should be excluded from the summary.
If a key, section, or piece of information is excluded or not provided, you must not generate an error message or any sentence describing why it has not been provided or explaining what data is missing.
There may be multiple keys with data for the same section. If there are and these keys have data, then include data from both keys in your description for that section heading in your output. There should only be one section with that name for your output that includes data from both keys combined.
The headings ‘Summary’, ‘Status’, and ‘Activities’ must be present in that order.
The Summary Data object should be summarized under the section titled “Summary”. This title must link to the lead’s record URL. After, there should be a paragraph describing the other related values in the summaryData key. The record URL should not be included or linked in the description paragraph.
When included, Status and Activities should also summarize in a paragraph their corresponding data under sections with those same names.
If the Lead Score is empty, then exclude it from the summary and do not mention it at all.
Section headers should be bold and wrapped in <p>. The Summary title must also link to the Record URL. Then, on the next line should be a paragraph description wrapped in <p>. Between each section should be one new line.
For Activities and any meetings, if the date is before today’s current date, then mention that there is no upcoming meeting scheduled along with the date the last meeting was on. If the next scheduled meeting is after the current date, then mention it as an upcoming meeting. If there is no activity, then exclude the Activities section.
Each paragraph description should be a maximum of three complete sentences written concisely using the third person perspective and prioritizing active voice. Avoid filler phrases or transition sentences. Emphasize only one important item for each description, such as a date, name, or title, by italicizing them.
List all dates in the format “Month Date, Year” without the time stamp. For monetary values, convert the currency code to its corresponding currency symbol. You must not include the currency code. Only include the currency symbol when talking about monetary values. Otherwise, do not include currency does in your summaries or descriptions.
You must spell out numbers that refer to amount of objects, if the number is lower than 10, such as ‘three contacts, four accounts, 12 meetings’ etc.
“””
Data:
“””
{
“summaryData”: { “Lead Name”: {!$Input:Lead.Name},
“Record URL”: “/{!$Input:Lead.Id}”,
“Lead’s company”:{!$Input:Lead.Company},
“Lead’s job title at the company”:{!$Input:Lead.Title},
“Lead was created on”: {!$Input:Lead.CreatedDate},
“Lead Source”: {!$Input:Lead.LeadSource},
“status”: {“Current status of the Lead”: {!$Input:Lead.Status}},
}
“””
The response should be in EN_US.
Now generate only the HTML rich text.
The following screenshot shows how this will look in the Einstein Copilot sidebar:
3. Summarize Open Cases for an Account
The next one is a field generation prompt template designed to help a support representative create a concise summary of all open cases for a specific account, following strict instructions to ensure clarity and brevity. As this is a field generation prompt, we need to first create a custom Long Text Area field on the account where this prompt can be utilized. Here’s how it works:
You’re a support representative, and you need to create a short summary of all open cases
for account {!$Input:Account.Name}.
When I ask you to summarize the open cases, you must strictly follow my instructions below.
Instructions:
“””
Summarize the open cases in one paragraph no longer than 500 characters. Mention how many open cases there are and what the case issues are.
Use clear, concise, and straightforward language using the active voice and strictly avoiding the use of filler words and phrases and redundant language.
Use the following information to write the summary: {!$Flow:Get_Open_Cases_for_Account.Prompt}.
Do not attribute any positive or negative traits in the summary.
“””
Now create the summary.
In this prompt, you will see a reference to {!$Flow:Get_Open_Cases_for_Account.Prompt}. This is a Flow being used to gather the necessary information needed for the cases associated with the account. You can find more information about how to build this Flow here.
As this is a field generation, we then need to assign the prompt template to the custom field we created. This can be done by going into the Lightning App Builder.
Once this has been done, the final outcome will look something like this:
4. Deal Summary
The next prompt template is designed to generate a concise and well-structured HTML rich text summary of a Deal record based on the provided data, with specific instructions for formatting and content inclusion. Here’s a breakdown of how it works:
- Input data
- The template uses data about the deal, such as its name, associated account, amount, close date, stage, next steps, risks, and other related records.
- Differentiation based on deal status
- Open deals: Include sections for Summary, Contacts, Activities, Risks, and Next Steps.
- Closed deals: Only include sections for Summary and Contacts.
- Section inclusion criteria
- Exclude sections or keys that do not have any related name-value pairs.
- Exclude placeholder values (e.g. “PROVIDE:”).
- Formatting instructions
- Headings: Bold and wrapped in tags.
- Summary Section: The title links to the deal’s record URL, with a paragraph summarizing other details.
- Contacts, Activities, Risks, Next Steps: Each has a paragraph summarizing the corresponding data.
- Next Steps: Always the final section for open deals.
- Content guidelines
- Descriptions should be concise, active voice, and third person.
- Avoid filler phrases and transition sentences.
- Emphasize important items by italicizing them.
- Dates are formatted as “Month Date, Year”.
- Monetary values include currency symbols without codes.
- Numbers below 10 should be spelled out.
- Mention overdue close dates if the close date is past.
- Exclude opportunity score above 33; mention it as a risk if below 33.
- Mention deal push-outs as a risk if greater than 0.
Using the details below, generate an HTML rich text output.
Instructions:
“””
Summarize the Deal record based on the data below.
Do not generate any CSS. Do not generate code block formatting.
Your summary will be different depending on if the deal is Open or Closed. Open Deals may include the headings for Summary, Contacts, Activities, Risks, and Next Steps in that order. Closed Deals may include headings for only Summary and Contacts.
If a key does not have any related name value pairs, then do not include that key in your summary. Sections must not be included if all of its related keys do not have any values or have placeholder values. For example, if there is no next step for the sales rep in the data, then there should not be a Next Steps section. Keys that have no value or placeholder values such as “PROVIDE:” should be excluded from the summary.
If a key or section is excluded, you must not generate an error message or sentences describing why it has not been provided or what data is missing.
There may be multiple keys with data for the same section, such as summaryData. If these duplicate keys have data, then include data from both keys in your description for that section heading in your output. Only one section with that name for your output that includes data from both keys combined should be present.
The Summary Data object should be summarized under the section titled “Summary”. This title must link to the deal’s record URL. After, there should be a paragraph describing the other related values in the summaryData key except for information about currency codes or the record URL. The record URL should not be included or linked in the description paragraph.
When included, Contacts, Activities, Risks, and Next Steps should also summarize in a paragraph their corresponding data under sections with those same names. Next Steps should always be the final section with its paragraph description following.
Section headers should be bold and wrapped in <p>. The Summary title must also link to the Record URL Then, on the next line should be a paragraph description wrapped in <p>. Between each section should be one new line.
Each paragraph description should be a maximum of three sentences written concisely using the third person perspective and prioritizing active voice. Avoid filler phrases or transition sentences. Emphasize only one important item for each description, such as a date, name, or title, by italicizing them.
List all dates in the format “Month Date, Year” without the time stamp. For monetary values, convert the currency code to its corresponding currency symbol. You must not include the currency code. Only include the currency symbol when talking about monetary values. Otherwise, do not include currency does in your summaries or descriptions.
You must spell out numbers that refer to amount of objects, if the number is lower than 10, such as ‘three contacts, four accounts, 12 meetings, 15 emails’ etc. On open deals, if you mention a close date, if that close date is past today’s date, then mention that it is overdue.
If the opportunity score is above 33, then exclude it from the summary. If the opportunity score is below 33, then mention it as a possible risk for the deal. If the number of times the deal has been pushed out is 0, then you must not mention it as a possible risk. However, if the number of times the deal has been pushed out is greater than 0, mention it as a possible risk associated with the opportunity.
“””
Data:
“””
{
“summaryData”: {
“Deal name”: {!$Input:Opportunity.Name},
“Record URL”: “/{!$Input:Opportunity.Id}”,
“Account associated with the deal”: {!$Input:Opportunity.Account.Name},
“Deal Amount”: {!$Input:Opportunity.Amount},
“Deal Close Date”: {!$Input:Opportunity.CloseDate},
“Current deal stage”: {!$Input:Opportunity.StageName}
},
“nextSteps”: {
“Sales rep’s next steps”: {!$Input:Opportunity.NextStep}
},
“risks”: {
“Opportunity Score”: {!$Input:Opportunity.IqScore},
}
“””
The response should be in EN_US.
Now generate only the HTML rich text.
5. Follow-Up Text Message for a Customer Case
This flex prompt template is designed to help a Customer Service Agent generate a concise text message to a customer regarding an issue with their order. The template includes specific instructions to ensure the message is clear, direct, and contains all necessary information while being limited to 60 words. Here’s a breakdown of how it works:
- Agent and recipient information
- The agent’s name and the customer’s name are dynamically inserted from the case data.
- Purpose
- The agent is following up with the customer to ask for more details about a problem with their order.
- Instructions for generating the text message
- The text message must be no longer than 60 words.
- Use clear, concise, and straightforward language in the active voice.
- Avoid filler words, redundant language, and phrases.
- Required information to include
- Description of the issue: {!$Input:Customer_Case.Description}
- AI-generated summary of the case: {!$Input:Customer_Case.Case_AI_Summary__c}
- Reason for the issue: {!$Input:Customer_Case.Reason}
- Call to action
- Ask the customer to confirm that the provided information is accurate.
- Offer to assist the customer immediately.
You’re a Customer Service Agent and your name is {!$Customer_Case.Contact.Name} from Ursa Major Solar. Your recipient is {!$Input:Customer_Case.Contact.Name}.
You’re following up with a customer to ask more about a problem with their order.
When I ask you to generate a text message, you must strictly follow my instructions below.
Instructions:
“””
Generate a text message. It must be no longer than 60 words.
Use clear, concise, and straightforward language using the active voice and strictly avoiding the use of filler words and phrases and redundant language.
Add the following information to the text message: {!$Input:Customer_Case.Description} {!$Input:Customer_Case.Case_AI_Summary__c} {!$Input:Customer_Case.Reason}
Ask the customer to confirm that this information is accurate.
End the text by offering to assist the customer now.
“””
Now generate the text message to your contact.
Summary
Salesforce’s Prompt Builder empowers admins to create effective prompts without needing technical expertise. Key learnings include the importance of clear, concise language and the necessity of setting a specific context for AI models. The tool encourages experimentation and user feedback to refine prompts.
The provided templates – such as for follow-up emails, lead summaries, open case summaries, deal summaries, and customer service messages – demonstrate how well-crafted prompts can enhance workflows and improve customer interactions. These templates serve as a solid foundation for admins to build upon, ensuring professional, personalized, and impactful communications.