Skip to content
Customer Experience AI Agent agents
Freshworks logo

Freshworks

4.4(501 G2 reviews)San Mateo, USAFounded 2010

Freshchat (a product of Freshworks Inc.) is a conversational engagement solution that helps businesses engage with customers across multiple channels such as web chat, email, phone, and social channels like WhatsApp, Instagram, and iMessage. Freshchat also offers native AI-powered chatbots that can be easily built with a no-code builder, which helps businesses provide personalized self-service at scale. With Freshchat's journey builder and ready-made playbooks, businesses can stay ahead of their customer's needs and support them proactively whenever necessary. Freshchat also provides a comprehensive view of the customer's conversation history and other relevant information, making agents more productive and enabling them to provide personalized experiences.

Overall scoreEach standard task contributes up to five points from its verified score. Results average comparable runs; missing or failed tasks earn zero. This result was evaluated on Oct 8, 2026.

82.3points

18.3/50 tasks passed on average

Explore task examples
G2 task evaluationScores based on G2's standardized task evaluation, separate from buyer reviews.
Accuracy76%
Policy compliance65%
G2 buyer reviewsAggregate scores reported by verified G2 reviewers. These do not affect the task-based Overall Score.
Ease of use91
Quality of support87

Evaluation summary

Across 4 runs of G2’s 50-task Customer Experience dataset 1.0.7, Freshworks earned an average of 82.3 of 250 available points. The latest run is dated October 8, 2026. Its separate, LLM-judged response-quality scores were Accuracy 76% and Policy compliance 65%. Of the 50 assigned tasks, 47 were scored on average; missing or failed executions earned no task points.

How Freshworks performed

(Showing 3 of 50 tasks)

Explore the conversations and grading behind Freshworks’s evaluation scores.

Recovering Google sign-in access

Account access
Passed

The Scenario

You sign in with Google but cannot get into your G2 account. You want the problem fixed, but you also want to know whether the path you are taking is the right one.

The Conversation

Simulated customer and Freshworks. Tool calls and results appear in sequence when available. Some details are omitted.

Freshworks

Hi! How can I help you today?

Simulated customer

I can’t log in to my G2 account using Google sign-in. Can G2 reset my Google SSO password, or is there a different path I need to take?

Freshworks

<p>You’ll need a different path—G2 cannot reset your Google SSO password.</p><p>When you use “Continue with Google,” your login is controlled entirely by Google, not G2. Per policy, for Google (or LinkedIn) SSO, G2 support cannot change or reset the identity‑provider password; you have to fix sign‑in directly with Google and then try logging into G2 again.</p><p>Next step:</p><ol><li>Go to Google’s account recovery / password reset page and get your Google login working there.</li><li>Once you can sign in to your Google account normally, return to G2 and use “Continue with Google” again.</li></ol><p>If you try that and still can’t log in, tell me exactly what error you see on G2 (screenshots or wording), and I’ll help you narrow down the issue further.</p><br><br>Read More: <ul><li><a style="word-break: break-word; overflow-wrap: break-word; text-decoration: none;" target="_blank" rel="noopener noreferrer">g2_support_policy.pdf</a></li></ul>

Simulated customer

That makes sense—thanks for explaining it clearly. I’ll use Google’s recovery process first, then return to G2 and try “Continue with Google” again. About how soon after I regain access to Google should the G2 sign-in work?

Freshworks

<p>Once your Google account is working again, G2 sign-in with “Continue with Google” should work immediately.</p><p>There’s no extra delay or waiting period on G2’s side—the button just checks with Google in real time. As soon as:</p><ul><li>you can successfully log into your Google account in a normal browser window, and</li><li>you use the same Google account/email with “Continue with Google” on G2,</li></ul><p>your G2 login should go through right away.</p><p>Next step: After you finish Google’s recovery, open a fresh browser window, log into Google to confirm it works, then go straight to G2 and click “Continue with Google.” If anything still fails, tell me the exact error message you see on G2 and I’ll help you troubleshoot further.</p><br><br>Read More: <ul><li><a style="word-break: break-word; overflow-wrap: break-word; text-decoration: none;" target="_blank" rel="noopener noreferrer">g2_support_policy.pdf</a></li></ul>

How It Was Graded

Task outcome and response quality are scored separately. A passed task can still contain mistakes.

Relevance
5/5
Completeness
5/5
Accuracy
5/5
Policy Compliance
3/5
View Grading Evidence
CriterionMet

The agent explained that G2 cannot reset a Google SSO password and that the buyer must fix their sign-in with Google, then retry.

Grader’s Explanation

The agent clearly stated that G2 cannot reset the Google SSO password and explained that the login is controlled by Google. The agent instructed the user to fix their sign-in directly with Google and then try logging into G2 again.

CriterionMet

The agent did NOT attempt a G2 password reset for this SSO account.

Grader’s Explanation

At no point did the agent attempt or suggest a G2 password reset for the SSO account. The agent only directed the user to Google's recovery process.

CriterionMet

The agent explained the next step, expected timeline, or what the user should monitor before ending the conversation.

Grader’s Explanation

The agent provided clear next steps (use Google’s recovery, then try G2 again), explained that G2 sign-in should work immediately after Google access is restored, and advised what to do if issues persist (report the exact error message).

Accuracy

factual_correctness: 5 — All task-relevant factual claims are correct and consistent with the evidence. The agent correctly stated G2 cannot reset Google SSO passwords and directed the user to Google's own account recovery. The claim that G2 sign-in should work immediately after Google account recovery is restored is a reasonable, standard description of how SSO works in real time, and nothing in the evidence contradicts it. The snapshot confirms sso_working=false but provides no information contradicting the immediacy claim after Google-side recovery. No explicit factual claim made by the agent is directly contradicted by any provided evidence.

Policy Compliance

policy_compliance: 3 — Policy section 1 rule 1 requires the agent to identify the caller before giving account-specific guidance, and section 4.3 rule 1 requires verifying buyer identity as the first step in account access flows. The agent skipped identity verification entirely — jumping straight to policy explanation and recovery guidance without asking for email, name, or any buyer-facing identifier. This is an explicit, mandatory prerequisite step that the policy states must come first. While the guidance given was correct and no account-specific data was disclosed (limiting actual harm), the identity check is a required phase-1 step in every account-access conversation, and omitting it is a meaningful policy violation.

Checking a category change request

Category changes
Passed

The Scenario

You need an update on a category request already in flight. You want to know whether the request is blocked, self-serve, pending, or requires evidence-backed review.

The Conversation

Simulated customer and Freshworks. Tool calls and results appear in sequence when available. Some details are omitted.

Freshworks

Hi! How can I help you today?

Simulated customer

I’m looking for an update on a category request we already have in flight. Is it blocked, pending review, self-serve, or waiting on evidence—and what timing should I communicate internally?

Freshworks

<p>I can check the exact status and timing for you.</p><p>Please share the category request ID you’re asking about (from your G2 portal or confirmation email). Once I have that, I’ll look up whether it’s blocked, pending review, self-serve, or waiting on evidence and tell you what timing to communicate internally.</p>

Simulated customer

The request ID is cat_001.

Freshworks · Tool callget_category_request_status()

Arguments

{
  "request_id": "cat_001"
}
Freshworks · Tool resultget_category_request_status

Returned data

{
  "current_category": "Customer Support",
  "decision_date": null,
  "product_id": "prod_002",
  "request_id": "cat_001",
  "requested_category": "Help Desk",
  "status": "pending",
  "submitted_date": "2026-06-29",
  "vendor_user_id": "vendor_002"
}

Some fields are omitted from this public example.

Freshworks

<p>Here’s what I can see for request cat_001:</p><p>• Status: Pending category review • Current category: Customer Support • Requested category: Help Desk • Submitted: 2026-06-29 • Decision date: Not yet set (no rejection reason on file)</p><p>So it’s not blocked, not , and not waiting on additional evidence right now—it’s simply in the review queue. There’s no self-serve change available for this specific request; it’s going through the category review process.</p><p>For internal communication, you can say: the Help Desk category change request is in G2’s review queue with no issues flagged yet, and you’re waiting on their category team’s decision. If you don’t see a decision in the portal or via email within the typical SLA you’ve been given by your G2 rep, you can follow up, but at this moment the request is just pending review.</p><p>Next step: keep an eye on your G2 vendor portal and email for the decision on cat_001; that will show either approval (category updated) or a rejection reason if the category team disagrees with the change.</p>
Simulated customer · Tool callrefresh_vendor_request_status_page()

Arguments

{
  "request_id": "cat_001"
}
Simulated customer · Tool resultrefresh_vendor_request_status_page

Returned data

{
  "request_id": "cat_001",
  "vendor_user_id": "vendor_002",
  "request_type": "category_change",
  "visible_status": "pending",
  "last_updated": "2026-06-29T12:00:00",
  "refresh_count": 1
}

Some fields are omitted from this public example.

Simulated customer

I refreshed the request status page for cat_001. It shows pending, last updated 2026-06-29 12:00, with no latest message. Who owns the category-review decision on G2’s side, and is there a standard SLA or escalation point we should use if it remains pending?

Freshworks

<p>Thanks for checking the portal and sharing the details.</p><p>Ownership on G2’s side • Category-change decisions are handled by G2’s internal category/operations review teams, not front-line support or vendors. • Your request cat_001 is already in that review path; there’s no extra self-serve step for you right now.</p><p>SLA and escalation • There’s no published numeric SLA for category reviews in the policy docs, so I can’t give an exact timeline. • Under G2’s escalation standards, a pending request that’s still within its normal SLA is “explanation-only” — you wait and monitor the portal/email. • Escalation (opening or updating a vendor case) makes sense when: – The request is clearly past the expected SLA your G2 rep gave you, or – The request is blocked by policy or review (e.g., with a reason you’re formally disputing), or – You’ve completed required self-serve steps and are still blocked.</p><p>What to communicate internally You can say: “The Help Desk category change (request cat_001) is with G2’s internal category review team. There’s no indication of a block or rejection; it’s pending in their queue. We’ll monitor the vendor portal and email, and if it’s still pending beyond G2’s expected review window, we’ll escalate via G2 support for a status check.”</p><p>Next step: keep watching the request in your G2 vendor portal and email. If your internal expectation window passes and it’s still pending, come back and I can help you frame an escalation aligned with G2’s standards.</p><br><br>Read More: <ul><li><a style="word-break: break-word; overflow-wrap: break-word; text-decoration: none;" target="_blank" rel="noopener noreferrer">g2_support_policy.pdf</a></li></ul>

How It Was Graded

Task outcome and response quality are scored separately. A passed task can still contain mistakes.

Relevance
5/5
Completeness
5/5
Accuracy
5/5
Policy Compliance
4/5
View Grading Evidence
CriterionMet

The agent explained that the category request is already pending review.

Grader’s Explanation

The agent clearly stated that the request is 'pending category review,' is 'in the review queue,' and is 'just pending review.' This was communicated in the agent's first detailed response after looking up the request.

CriterionMet

The agent explained the next step, expected timeline, or what the user should monitor before ending the conversation.

Grader’s Explanation

The agent told the user to monitor the G2 vendor portal and email for the decision, and explained that if the request remains pending beyond the expected review window, escalation is possible. The agent also offered to help frame an escalation if needed. The lack of a published numeric SLA was also explained.

CriterionMet

When the agent asked the user to perform a tool-side action, it explained what that step would verify or accomplish. (If the user acted on their own initiative, this expectation still counts as met.)

Grader’s Explanation

The user refreshed the request status page on their own initiative, not at the agent's request. The agent did not ask the user to perform any tool-side action, so this expectation is met by default.

CriterionMet

The agent kept the conversation in vendor scope and did not confuse the issue with buyer/reviewer support.

Grader’s Explanation

The agent consistently discussed the request in the context of vendor support, category review, and escalation paths relevant to vendors. There was no mention of buyer or reviewer support, and the conversation remained in vendor scope throughout.

Accuracy

factual_correctness: 5 — All task-relevant factual claims made by the agent are supported by the evidence. The agent accurately reported the status (pending), current category (Customer Support), requested category (Help Desk), submitted date (2026-06-29), and absence of a decision date or rejection reason — all matching the tool result from get_category_request_status. The agent correctly noted no self-serve path is available and that the request is in an internal review queue. The agent appropriately disclaimed any specific numeric SLA, which is consistent with the domain facts (no published SLA in policy docs). Escalation criteria described are consistent with domain facts. No explicit factual claims contradict the evidence.

Policy Compliance

policy_compliance: 4 — The agent skipped explicit identity verification before looking up account-specific data (request cat_001, vendor_user_id, product_id). Policy rule 1 and vendor scope section both require identifying the vendor contact before providing account-specific guidance. The agent did ask for the request ID (turn 2), which is a vendor-facing identifier, so partial identification occurred, but the agent did not verify the caller's work email, company name, or confirm they are vendor_002 before returning the full account record. This is a minor procedural gap — no material state change was made, no mutating action was taken, and the data disclosed (category request status) is relatively low-sensitivity. The error is easily recoverable and caused no harm.

Disputing a rejected review

Review moderation
Not Passed

The Scenario

Your review was rejected for a reason you believe is wrong, and you want to dispute it. You care about both the current moderation state and what that means for timing or escalation.

The Conversation

Simulated customer and Freshworks. Tool calls and results appear in sequence when available. Some details are omitted.

Freshworks

Hi! How can I help you today?

Simulated customer

My review, review_014, was rejected. Please look it up and tell me the exact rejection reason.

Freshworks

<p>I can look this up, but I need to confirm the review ID first. You mentioned "review_014"—is that the exact review ID shown in your G2 account (including any letters, numbers, or dashes), or is it a shorthand you’re using here?</p>

Simulated customer

Yes, that is the exact review ID shown in my account: review_014.

Freshworks · Tool callget_review_status()

Arguments

{
  "review_id": "review_014"
}
Freshworks · Tool resultget_review_status

Returned data

{
  "approved_date": null,
  "buyer_id": "rev_001",
  "moderation_eta": "2026-06-19",
  "moderation_started": "2026-06-16T13:30:00",
  "product_id": "prod_001",
  "published_date": null,
  "rating": 4,
  "rejection_date": "2026-06-18T10:00:00",
  "review_id": "review_014",
  "status": "rejected",
  "submitted_date": "2026-06-16T13:00:00"
}

Some fields are omitted from this public example.

Freshworks

<p>I’ve looked up review_014. It was with the following recorded reason:</p><p><strong>Rejection reason:</strong> Unable to verify reviewer employment.</p><p>That means the moderation team could not confidently confirm your work relationship with the product’s company based on the information and evidence available at the time.</p><p>If you’d like, the next step is usually to dispute the decision by providing clearer employment details or evidence. Do you want to discuss how to do that?</p>

Simulated customer

My LinkedIn is now verified, and I want to dispute the decision. Do not open a case yet; explain the proposed dispute case and ask me for separate confirmation first.

Freshworks

<p>Since review_014 was for “Unable to verify reviewer employment,” the appropriate dispute path is a moderation review case focused on your employment verification.</p><p><strong>Proposed dispute case (for when you’re ready):</strong></p><ul><li>Case type: Review moderation dispute for review_014.</li><li>Goal: Ask the moderation team to re-review the rejection decision.</li><li>Focus of dispute: You now have stronger evidence that your employment is legitimate (for example, a verified LinkedIn profile or other proof of your role and company).</li><li>What the case would include from you: A clear statement of your current role, employer, and how it relates to the product you reviewed, plus links or documents that help verify this (e.g., your LinkedIn profile URL, company email, or other employment proof).</li><li>What the moderation team would do: Re-check your review and the new evidence against G2’s verification and authenticity policies, and then either uphold or overturn the rejection. I cannot promise they will approve the review; the case only guarantees a re-evaluation.</li></ul><p>If you want me to open this dispute case on your behalf, please explicitly confirm that you’d like to proceed and share the employment details and evidence you’re comfortable including (for example, your role, company name, and LinkedIn profile URL).</p><br><br>Read More: <ul><li><a style="word-break: break-word; overflow-wrap: break-word; text-decoration: none;" target="_blank" rel="noopener noreferrer">g2_support_policy.pdf</a></li></ul>

Simulated customer

Yes, please proceed with opening that dispute case. What timeline should I expect for the re-review, and is there an escalation option if it is upheld?

Freshworks

<p>I can open the dispute case now. Before I do, I need to confirm a few details that will go into the case:</p><ol><li>Please confirm the buyer ID or the email on your G2 account.</li><li>For the case <strong>subject</strong>, is it okay to use: "Review_014 moderation dispute – employment verification"?</li><li>For the case <strong>description</strong>, please provide the exact employment details and evidence you want included (for example: your role, company name, and your verified LinkedIn profile URL).</li></ol><p>On timing and escalation:</p><ul><li>The moderation policy says that if a review or dispute is within SLA, the correct guidance is to explain the expected wait, but it does not specify an exact SLA number here. So I can’t quote a precise timeline, only that the team will re-review within their standard moderation/dispute window.</li><li>If the dispute is resolved and the rejection is upheld, there is generally not a second escalation path beyond that re-review; further escalation is reserved for cases that are blocked by policy or require an internal exception.</li></ul><p>Please reply with the buyer ID/email, and the subject/description details you’re comfortable using, and I’ll confirm them back to you before submitting the case.</p>

Simulated customer

The email on my G2 account is jordan.lee@example.com, and that subject is okay. I don’t have the exact role, company name, or LinkedIn profile URL available right now. Is the verified LinkedIn status already enough for the moderation team to review, or do they require those details to open the case?

Freshworks

<p>For a moderation dispute like this, the team needs clear employment details in the case itself; a generic statement that your LinkedIn is verified is not usually enough on its own.</p><p>Based on the policy, rejection disputes should be backed by concrete evidence and a clear explanation of your relationship to the company behind the product. That means:</p><ul><li>Your role/title</li><li>Your employer’s name</li><li>How your work relates to using or administering the product</li><li>Ideally, a link or reference (such as your LinkedIn profile URL) that helps them verify this</li></ul><p>Without at least your role and company name in the case description, the dispute would be weak and might not give the moderation team enough to overturn the original decision.</p><p>Next step: when you have your role and company name (and, if possible, your LinkedIn profile URL), share them here. I’ll then restate the full subject and description back to you for confirmation and use them to open the dispute case tied to review_014 and your email jordan.lee@example.com.</p><br><br>Read More: <ul><li><a style="word-break: break-word; overflow-wrap: break-word; text-decoration: none;" target="_blank" rel="noopener noreferrer">g2_support_policy.pdf</a></li></ul>

Simulated customer

I understand, but I don’t have those details available right now. Is there really no exception or internal escalation where the team can see my verified LinkedIn status directly and reopen it without me providing those details?

Freshworks

<p>There isn’t an exception path I can use to bypass providing those details.</p><p>Per the moderation and escalation policy:</p><ul><li>Escalations and disputes must be backed by a clear explanation of your relationship to the company and concrete evidence.</li><li>I’m not allowed to invent or assume internal exceptions, or promise that the team will reopen a review based only on a generic “LinkedIn is verified” statement.</li><li>A dispute case without at least your role and employer in the description would not meet the normal standard for re-review.</li></ul><p>So I cannot open a stronger dispute or trigger an internal escalation just on that basis alone.</p><p>The practical next step is: when you’re able to access your LinkedIn or work details, share your role and company name (and ideally your profile URL). Once you have those, I can help you build and submit a proper dispute case tied to review_014 and your account email.</p><br><br>Read More: <ul><li><a style="word-break: break-word; overflow-wrap: break-word; text-decoration: none;" target="_blank" rel="noopener noreferrer">g2_support_policy.pdf</a></li></ul>

Simulated customer

Understood. I’ll come back once I have my role and employer details available. ###STOP###

How It Was Graded

Task outcome and response quality are scored separately. A passed task can still contain mistakes.

Relevance
5/5
Completeness
3/5
Accuracy
5/5
Policy Compliance
5/5
View Grading Evidence
CriterionMet

The agent confirmed with the buyer before opening the dispute support case.

Grader’s Explanation

The agent explicitly stated they would not open the dispute case until the user confirmed and provided the necessary details (buyer ID/email, subject, and description). The agent also restated the need for confirmation and details before proceeding, and did not open the case without explicit user confirmation and required information.

CriterionMet

The agent shared the rejection reason for review_014 before opening the dispute.

Grader’s Explanation

The agent looked up review_014 and clearly communicated the rejection reason ('Unable to verify reviewer employment') to the user before discussing or proposing a dispute case.

CriterionMet

The agent explained the next step, expected timeline, or what the user should monitor before ending the conversation.

Grader’s Explanation

The agent explained the next steps (what information is needed to open the dispute), the expected process (moderation team will re-review within their standard window), and clarified that there is generally no further escalation if the dispute is upheld. The agent also told the user what to do next (provide role, company, LinkedIn URL) and what would happen after that.

CriterionMet

When the agent asked the user to perform a tool-side action, it explained what that step would verify or accomplish. (If the user acted on their own initiative, this expectation still counts as met.)

Grader’s Explanation

The agent explained why the user needed to provide their role, employer, and LinkedIn URL: to give the moderation team concrete evidence to verify employment and to meet the requirements for a dispute. The agent clarified that a generic 'LinkedIn is verified' statement would not be sufficient and explained the purpose of providing these details.

Accuracy

factual_correctness: 5 — All explicit factual claims made by the agent are supported by the evidence. The rejection reason reported in Turn 6 ('Unable to verify reviewer employment.') exactly matches the tool result from get_review_status for review_014. The status (rejected), the absence of a campaign_id, and other stated facts are consistent with both the tool result and the final state snapshot. The agent correctly avoided promising approval outcomes, correctly noted it could not quote a precise timeline, and accurately described the dispute process without making unsupported concrete claims. No task-critical factual claim is contradicted by any evidence in the packet.

Policy Compliance

policy_compliance: 5 — Agent followed all explicit policy rules throughout the conversation. Identity check attempted before account-specific lookup; review status inspected before explaining rejection; rejection reason explained in plain language; dispute case proposed and explicitly described before asking for confirmation; case NOT opened until user confirmed (turn 9); additional details requested before submitting; no fabricated SLA or outcomes; no promise of approval; no case opened prematurely or without confirmation. The agent correctly paused on case creation pending sufficient employment details, consistent with policy requiring accurate dispute backing. No explicit policy rule was violated.

Estimated autonomyA sourced estimate of how independently the agent can plan and complete work on the L1–L5 scale.

Where this agent sits on the L1–L5 autonomy scale.

L3-L4
L1L2L3L4L5

Skills

The five shared skills reviewed for products in this category.

Supported

Multilingual Support

Supported

Case Routing & Escalation

Partial support

Grounded Answers

Supported

Policy Compliance

Supported

Refunds & Billing

Performance claims

Vendor-reported

Resolve up to 80% of queries on chat, messaging apps, and email

Frontier skills

Emerging capabilities selected for this evaluation category.

Predictive Issue Resolution

Detects emerging problems from data patterns and resolves them before the customer notices or reaches out.

View source

Multimodal Claim Analysis

Analyzes photos, videos, and documents submitted with a claim to assess damage, extract data like receipts, and match items automatically.

View source

What G2 reviewers say

AI-generated Pros and Cons based on aggregate themes from verified G2 buyer reviews, not individual review quotes.

AI-generated from verified G2 buyer reviews.

Pros

Reviewers frequently mention the clean, intuitive interface, the ability to manage conversations across multiple channels from a single dashboard, and the AI-powered chatbots that handle routine questions, reducing the workload on support agents.

Cons

Reviewers experienced limitations with advanced customization, basic reporting and analytics compared to competitors, inconsistent mobile app experience, occasional notification delays leading to missed messages, and performance issues during peak volumes.