B2B SaaS · Travel Tech AI · EKLA · WhatsApp-first UX Audit · Product Review getnama.app · 2026

NAMA OS
PM Product Review

An end-to-end product manager review of NAMA - an AI-native travel operating system for DMCs, tour operators, and travel agencies. I mapped friction points, trust gaps, and conversion blockers across 12 product surfaces, from landing page to post-onboarding dashboard, and prioritised recommendations by business impact.

12 surfaces
Product areas audited end-to-end
30+ issues
Friction points identified across all flows
5 critical
Severity-Critical blockers affecting trust and conversion
5 recs
Strategic recommendations for retention and pipeline integrity
01 — Overview

A product with genuine power and a UX that undersells it at every step.

NAMA is a B2B travel operating system built for a real and painful problem: travel agents spend hours building quotes manually, miss WhatsApp leads at night, and operate without real-time margin visibility. Its AI layer, EKLA, promises to compress a 3-hour quoting workflow into 5 minutes. That value proposition is credible. The product has genuine depth - M1–M19 modules, multi-channel lead capture, a full CRM, itinerary builder, bookings, and a P&L dashboard.

I conducted this review as independent product research to practice structured product thinking on a live B2B SaaS product. I went through the full user journey: landing page, sign-up, an 8-step onboarding flow, and every major product surface inside the app. What I found was a pattern: a sophisticated product consistently undermined by low-contrast text, inconsistent naming, data integrity gaps between views, and a series of trust-damaging moments that hit hardest at exactly the points where conversion is most at risk.

My review methodology: Desktop web audit on Chrome. Each screen evaluated against four criteria - (1) clarity of primary action, (2) trust signals, (3) data accuracy across views, and (4) friction-to-value ratio. Issues severity-scored as Critical (conversion/trust loss), Major (significant friction), or Minor (quick polish win).

What NAMA is trying to do

NAMA positions itself as "the world-class AI-native B2B2C travel operating system for DMCs and tour operators." Its core loop is: enquiry arrives via WhatsApp or web form → EKLA AI triages and scores the lead → a margin-aware quote is drafted and sent → booking confirmed → P&L tracked live. The BYOK (Bring Your Own Key) model - where agencies connect their own Groq API key to power EKLA - is a smart architectural and pricing decision. It keeps NAMA's AI costs near-zero and creates a cost-comparison moat against traditional travel CRMs.

What's working well: Strong value proposition, WhatsApp-native workflow, live margin visibility, the sample data strategy during onboarding, and the EKLA four-persona framework (Sales / Pricing / Ops / Comms). These are genuine differentiators that most travel CRMs don't have.


02 — Landing Page

A premium first impression with conversion-critical gaps hiding in plain sight.

🌐
Product Surface
Landing Page - getnama.app
First exposure for potential B2B customers. Primary conversion goal: sign-up or demo booking.

NAMA landing page: strong dark-mode aesthetic with a bold hero headline. The page is long with no visible scroll cue, and the 'Watch it in action' CTA above the fold is a dead link.

NAMA sign-up page - split-screen layout with form and value props

Sign-up page: split-screen design combining persona selection, account creation, and plan selection all in one scrollable view. The plan labels (light gray on white) fail contrast minimums at the exact moment a user is choosing a paid tier.

The landing page has a modern dark-mode aesthetic that feels premium and product-led. The headline - "You're losing bookings to agents who respond faster" - is sharp and audience-aware. But several issues undermine the conversion journey for a visitor who has made it past the fold.

No video behind the "Watch it in action" CTA
Critical

The most prominent CTA above the fold invites visitors to watch a demo. Clicking it leads nowhere - the button is a dead link. The "Watch 3-minute overview" CTA in the footer has the same problem. This is the highest-intent action a sceptical B2B buyer will take, and it fails silently. No 404, no placeholder, just nothing. Every B2B visitor who clicks this and gets no response has reduced confidence that the product is live and maintained.

Fix: Add a working Loom, a YouTube embed, or a placeholder frame with a "recording soon" message. Even a static screenshot tour is better than a dead button at this conversion point.
Testimonials read as placeholder copy
Critical

The social proof section lists "Arjun Sharma, CEO Horizon Holidays" and "Priya Mehta, Head of Sales Wanderlust DMC" - with no photos, no LinkedIn profiles, no company websites. The company name marquee (Horizon Holidays, Wanderlust DMC, Elite Escapes) looks like default placeholder text. In B2B SaaS, where trust is everything, fake-looking social proof is worse than no social proof. A sceptical buyer actively looking for reasons to disqualify a vendor will find this immediately.

Fix: Replace with 2–3 real, verifiable beta user quotes even if shorter. A LinkedIn name link, a company URL, or even just a city ("Ravi Mehta, Mumbai-based DMC founder") signals authenticity. Remove the marquee until it contains real company names.
Low contrast on decorative serif headings
Major

Key headings like "Under 5 minutes" and "Isn't Human" use a thin teal/green serif font against dark backgrounds. The combination of low font weight and insufficient contrast ratio fails WCAG AA standards and reduces legibility for users in bright environments or with visual impairments.

Fix: Increase font weight to 500+ or darken the teal/green to a shade that achieves at least 4.5:1 contrast ratio. Typography that carries the product's key claims needs to be unambiguously readable.
Navigation structure changes between landing page and pricing page
Major

The homepage nav shows "Why NAMA / Modules / How It Works / BYOK Savings." The pricing page nav shifts to "Product / Pricing / BYOK Savings" - different structure, different items. A visitor bouncing between pages to compare plans experiences a disorienting navigation shift at exactly the moment they are evaluating a purchase decision.

Fix: Standardise navigation items across all marketing pages. Use a single persistent nav structure; if some items need to hide on certain pages, remove them from the DOM rather than replacing them with different items.
Inconsistent CTA labelling for the same action
Minor

"Watch it in action" (top) vs "Watch 3-minute overview" (bottom) vs "View demo" all label the same product demo video. Inconsistent labelling for the same destination creates cognitive load - visitors wonder whether they are clicking through to the same thing or three different resources.

Fix: Pick one label and use it consistently across the entire page. "See how it works" is clear, action-oriented, and works anywhere on the page without needing positional context.
Quick Wins — Landing Page
  • Add a sticky header with CTA so users don't scroll back to convert after reading mid-page content
  • Move "Trusted by" logos higher - social proof placed above the fold builds trust before the user has to scroll to find it
  • Fix zero counters or hardcode real early-cohort numbers; empty metrics read as a live error
  • Increase "Get started now" button size in the footer to create a proper final CTA moment
  • Build a public product tour or screenshots page - show the inside of the app before users commit to signing up
  • Add an "About" page - single-founder B2B SaaS needs a face behind the product for enterprise trust

03 — Onboarding (8 Steps)

An ambitious setup flow with friction concentrated exactly at activation.

🚀
Product Surface
Sign-up & 8-Step Onboarding Flow
Covers login page, persona selection, invoice setup, lead capture config, EKLA activation, data import, team invite, and completion.

NAMA's onboarding is genuinely ambitious: 8 steps that attempt to configure a complete workspace - business identity, invoice header, lead channels, AI key, data import, and team setup - before the user ever sees the dashboard. The live preview pattern used across steps 2–4 (showing the sidebar or invoice updating in real time as you configure) is excellent UX. But several critical issues cluster around the points where a user is most likely to abandon.

Step 1 — Sign-up / Login

Critical text contrast failure throughout the sign-up form
Critical

The "CHOOSE YOUR PLAN" labels, the "I AM A" field labels, and the sub-text under persona options all use light gray on white - likely failing WCAG AA (4.5:1) at the plan selection level. A user who cannot read the pricing text cannot make an informed business decision. This is the highest-stakes UI moment: the user is choosing a plan and about to enter payment information.

Fix: Darken all light-gray labels against white backgrounds to achieve minimum 4.5:1 contrast. The plan pricing text is especially critical - make it the most legible element on the screen, not the least.
High-friction signup form asks too much at once
Major

The signup form combines persona selection, personal info, company info, and plan selection all in one scrollable view. Asking users to pick a pricing plan before they have experienced the product is a standard conversion anti-pattern. Long-form signup increases drop-off, and combining identity decisions (who am I?) with financial decisions (which plan should I pay for?) in a single step multiplies cognitive load.

Fix: Break into two steps: (1) Create Account - name, email, password; (2) Configure Workspace - persona, plan. Better still, default all new users to the free tier and surface plan upgrade during activation, once they have seen the product's value.

Steps 2–4 — Workspace Setup

NAMA onboarding step 2 - agency type selection with live sidebar preview

Step 02 / 08: Agency type selection. The live sidebar preview on the right is excellent UX. But circles (radio-button convention) are used for a multi-select interaction - a direct conflict with established UI patterns that will cause hesitation.

Circle icons signal single-select but "Select all that apply" asks for multi-select
Major

Step 2 instructs users to "Select all that apply" but uses circular icons - which by established convention signal radio buttons (single choice). This violates a fundamental UI mental model and will cause hesitation or incorrect selection for users who follow the visual cue over the text instruction.

Fix: Replace circles with square checkboxes. When selected, show a checkmark inside a rounded square. This is a one-line CSS change that removes a genuine UX anti-pattern.
Lead channel toggles are active but non-functional ("Connect in Settings")
Major

In Step 4 (Lead Capture), WhatsApp and Email toggles are pre-toggled ON but both show "Connect in Settings" - meaning no actual connection happens here. The user is toggling preference for a channel they cannot actually connect at this step. This creates a lie-by-design moment: the user feels like they are configuring something that is actually deferred. When they reach the dashboard and EKLA is inactive because no channels are connected, the completion state is misleading.

Fix: Either make this step purely preference declaration (replace toggles with checkboxes labelled "I plan to use this") or include at minimum a partial connection flow - a WhatsApp number input with a "we'll verify later" status. Don't show active-looking toggles for inactive functionality.
NAMA onboarding step 3 - invoice header setup with live preview

Step 03 / 08: Invoice header setup. The live invoice preview on the right is a best-practice 'show don't tell' pattern. Missing: a logo upload field and brand colour picker - the two things any agency owner expects in an invoice header screen.

NAMA onboarding step 4 - lead channel configuration with query inbox preview

Step 04 / 08: Lead Capture. WhatsApp and Email toggles are pre-toggled ON but both say 'Connect in Settings' - meaning nothing is actually connected here. The live Query Inbox preview shows EKLA intent scoring that the user won't see until channels are actually connected.

Step 5 - EKLA Activation (Groq API Key)

NAMA onboarding step 5 - EKLA activation requiring Groq API key

Step 05 / 08: EKLA Activation. Users must leave the app to create a Groq account and generate an API key mid-setup. Non-technical users - the core target audience of travel agency owners - will abandon here. Note 'Use without AI' is buried as a secondary option.

Requiring an external API key mid-onboarding is a critical drop-off risk
Critical

Step 5 requires users to leave the app, navigate to console.groq.com, create an account, and generate an API key - all mid-setup. For non-technical users (the majority of travel agency owners), this is an escape room, not an onboarding. Requiring tab-switching during a linear 8-step flow is one of the highest friction moments possible. Every user who doesn't know what an API key is will abandon here.

Fix: Provide a "Use NAMA's Key (Limited)" option that gives users full EKLA functionality for a trial period (e.g. 50 queries) using NAMA's own Groq account. Let users experience the AI's value before asking them to provision their own key. This is also a strong conversion trigger for the BYOK cost-savings argument.
NAMA onboarding step 6 - data import with pipeline preview

Step 06 / 08: Data Import. 'Start with sample data (RECOMMENDED)' is the right default - it lets users click around immediately. The pipeline preview showing 142 enquiries gives a realistic sense of the product's depth. Gap: the CSV 'auto-map columns' promise has no documented failure state or sample template.

Step 8 — Onboarding Completion

"Request failed" toast on the completion screen
Critical

The final onboarding screen - the moment of maximum positive reinforcement in any SaaS product - shows a "Request failed" error toast in the bottom-right corner. The completion checklist simultaneously shows "EKLA Not activated" and "Lead channels None connected yet." Something failed during setup, but the user has no idea what, whether it matters, or how to fix it. The completion screen is the worst possible place for a silent error. Users who reach this point with broken state will either churn immediately or underuse the product because they believe it to be broken.

Fix: Implement retry logic for setup tasks that fail silently. If retry fails, surface a specific, actionable error: "WhatsApp connection didn't finish - continue in Settings → Integrations." Never show a generic error toast on a completion screen without a resolution path.
NAMA onboarding step 8 - completion screen with 'Request failed' toast

Step 08 / 08 Completion screen. The 'Request failed' toast is visible in the bottom-right corner - a critical error on the highest-stakes screen in the onboarding flow. EKLA shows 'Not activated' and Lead channels show 'None connected yet', both grey and incomplete.

What to build after fixing the blockers: A post-onboarding "first win" flow - a guided "create your first quote in 60 seconds" sequence (demo lead → EKLA draft → PDF preview). One complete loop through the core value delivery is the activation event that determines 30-day retention. Right now, completing onboarding dumps the user into a cold dashboard with 142 demo leads and no clear next step.


04 — Dashboard

A strong layout concept undermined by data integrity failures.

📊
Product Surface
Main Dashboard
Post-onboarding home screen. Primary job: surface urgent actions and pipeline health at a glance.
NAMA dashboard - action-oriented layout with KPI cards and pipeline widgets

Dashboard: 'What needs your attention' widget renders twice (visible here - two separate instances stacked). The Revenue card shows a loading skeleton that never resolves despite all other sections loading. Sidebar shows Leads: 47 while the KPI card on the main view shows 'Total Leads: 2'.

The dashboard has the right information architecture: "What needs your attention" prioritisation widget at top, KPI cards for net margin and quotes, an agent leaderboard, and P&L visualisations. The action-oriented design philosophy is correct for a B2B sales tool. But three data integrity failures make it feel broken rather than trustworthy.

"What needs your attention" widget renders twice
Critical

The priority widget renders two instances on the same dashboard view. This is a component mounting bug that immediately signals to any technical buyer that the product is in early development. First impressions of the core workspace set expectations for every subsequent interaction.

Fix: Add automated smoke tests that assert unique rendering of core dashboard components on every deploy. This category of bug should never reach production.
Revenue widget permanently stuck in loading skeleton
Critical

The Revenue stat card never resolves - it shows an indefinite loading skeleton even with sample data present across other parts of the dashboard. The P&L visibility use case is one of NAMA's core value propositions. A revenue widget that never loads is a direct contradiction of the product's primary promise.

Fix: Implement a fetch timeout with a "Retry" button and a specific error message if the data pipeline fails. Loading skeletons should have a maximum timeout of 5 seconds before showing either data or an error state, never an infinite spinner.

Dashboard design principle: Every KPI card must be able to show three states - loading (≤5s), data present, and error with retry. The absence of an error state in any UI component is not simplicity; it is a hidden failure mode waiting to manifest in front of your highest-value customers.


05 — Core Modules

Deep functionality found, but pipeline coherence is missing between modules.

Quotations

NAMA quotations module - table view with status filters

Quotations module: the page header says 'Quotes' while the page title says 'Quotations'. The table has only status-based filters (Draft / Sent / Accepted / Expired) with no date range filter. Horizontal scroll appears on a table with a single record, obscuring the Actions column.

No time-based filter, no quote versioning, no follow-up scheduling
Major

The Quotations module filters by status only (Draft / Sent / Accepted / Expired). An agency handling 50+ quotes per month needs to filter by time period. There is no date range filter, no quote versioning (when a client asks to change the hotel, agents duplicate the quote and lose the negotiation trail), and no one-click "Set follow-up reminder" on sent quotes. The most common drop-off in travel sales - a sent quote with no response - has no product support here. This is exactly where EKLA Comms should surface proactively: "No response on this quote in 48 hours. Want me to send a follow-up?"

Fix (P1): Add a date range filter to the Quotations table header. Fix (P2): Add v1/v2/v3 versioning to quote records. Fix (P3): Surface an EKLA-powered follow-up nudge on SENT quotes with no activity after a configurable interval.
Page title says "Quotations" but page header says "Quotes"
Minor

Inconsistent entity naming across a single screen signals either a rushed implementation or a lack of a naming convention. In a product where naming consistency is a core trust signal for enterprise buyers, this matters beyond the superficial.

Fix: Establish a naming dictionary (Leads, Quotations, Bookings, Contacts) and enforce it across all page titles, breadcrumbs, table headers, API paths, and sidebar labels. This is a 2-day engineering task.

Bookings

"Fulfillment Readiness" section permanently stuck on loading
Critical

The Fulfillment Readiness section in Bookings shows a permanent loading spinner despite other data being present on the page. This follows the same pattern as the Revenue widget - a data pipeline failure with no error state and no user escape hatch. For a booking-stage view, where operational readiness is the core user need, an indefinitely loading status widget is a functional failure.

Fix: Same as Revenue widget - implement a 5-second fetch timeout with an actionable error state and a Retry button.
No visible Quote-to-Booking conversion workflow
Major

When a quote is accepted, what happens next? The workflow between Quotations → Bookings is the most critical handoff in the travel sales pipeline. It is not visible from either module. Does accepting a quote auto-create a booking? Does the agent manually move it? This handoff ambiguity means agents will either miss it or develop workarounds that pollute the data model.

Fix: Every accepted quote should have a prominent primary CTA: "Convert to Booking." A one-click action that pre-fills the booking form from existing quote data. Surfacing this workflow is the single highest-impact pipeline integration feature NAMA could ship.

Holiday Package Catalogue

NAMA holiday packages catalogue - package cards with departure and availability

Holiday Packages Catalogue: visually the strongest module in the product. Package cards show destination, pricing, inclusions, seat availability, and next departure at a glance. The sidebar at left shows 14+ top-level navigation categories with a scrollbar - the most congested navigation structure in the product.

Sidebar navigation has 14+ top-level items with no grouping
Major

The sidebar contains over 14 main menu items plus sub-items, filling the entire vertical height and requiring a scrollbar within the navigation itself. Excessive top-level navigation items increase time-to-task and prevent users from building a mental map of the system. This is particularly damaging during the first-week experience, when users are still orienting.

Fix: Group related categories into broader buckets - "Sales" (Leads, Quotations, Communications), "Operations" (Bookings, Itineraries), "Inventory" (Packages, Catalogue). Reduce top-level count to 5–7 items. Implement collapsible sub-sections for secondary actions.

Communications

NAMA communications module - template library with AI drafting

Communications module: the strongest UI in the product. Template library with lifecycle tagging (New Lead, Quote, Booking, Pre-Trip), AI tone selection, and a live WhatsApp preview. The 'Draft with AI' integration is well-placed at the point of action. High information density may overwhelm new users arriving from onboarding.

The Communications module shows high visual polish and strong potential for AI-assisted workflows - "Draft with AI" and "Tone" selection are well-placed features that align with EKLA Comms' positioning. The main risk here is information density for new users arriving from a long onboarding flow. The simultaneous visibility of multiple nav items, dense metric cards, and AI drafting tools may overwhelm before it delights. A focused empty state for new users ("Your first message thread will appear here") would ease the cold start problem.


NAMA holiday package bookings - booking ID list with payment status

Holiday Package Bookings: clean tabular view with booking IDs, customer names, package, departure, pax, amount, and payment status. 47 total bookings visible with ₹18.4L revenue this month - but this figure conflicts with the Dashboard's Revenue widget which shows a permanent loading state and never displays this same number.

06 — Leads & CRM

The most feature-rich surface in the product — and the most data-inconsistent.

🎯
Product Surface
Leads Module
Multi-view (List, Pipeline, Kanban), EKLA intent scoring, conversion funnel, multi-dimensional filtering.
NAMA leads module - KPI mismatch between sidebar count and page total

Leads module: sidebar shows 47 leads, KPI card shows 'Total Leads: 2'. Five blurred loading-skeleton rows appear above the two visible lead records on a fully-loaded page. The conversion funnel at bottom shows 0 wins despite the pipeline showing Qualified and Contacted stages active.

The Leads module is the most ambitious screen I reviewed in NAMA. Multiple views (List, Pipeline, Kanban), multi-dimensional filtering (stage + source + temperature), EKLA intent scoring, and a conversion funnel at the bottom - this is the feature depth that justifies a B2B subscription. But it has the most severe data integrity problem in the product.

Total Leads KPI card shows "2" while the sidebar shows "47"
Critical

The sidebar badge shows 47 leads. The KPI card in the Leads module says "Total Leads: 2." The table shows 2 visible leads plus blurred loading rows. These three data points are simultaneously visible on the same screen and all disagree. For a CRM product, data accuracy is the product. A user who cannot trust the basic count of their lead pipeline cannot trust any metric in the system. This surfaces the second major badge/count inconsistency I found (the first is in Dashboard; similar mismatches exist across Quotations and other modules).

Fix: This is not a UI fix - it is a data pipeline integrity issue. Implement automated smoke tests that assert sidebar badge counts match page-level KPI counts before every deploy. The badge system and the page data must share a single source of truth.
Blurred loading rows visible on a fully-loaded page
Major

Approximately 5 blurred gray rows appear above the two visible lead records. These are a loading skeleton state, but they persist on a fully-loaded page - not a mid-fetch state. For a data table, a loading skeleton that never resolves is functionally identical to a blank row. It implies data exists that cannot be loaded, without any explanation of why.

Fix: Loading skeletons must resolve to either data or an empty/error state within a fixed timeout. Never show a loading state as a terminal state.

The data consistency theme: I found the same sidebar/page count mismatch across Dashboard, Quotations, and Leads. Badge counts contradicting page-level stats is not three separate bugs - it is a systemic issue in how real-time counts are aggregated and cached. A single root-cause fix in the data pipeline will resolve all of them. Prioritise this above any UI work.


07 — Critical Bugs

A pattern of silent failures and developer errors exposed to end users.

Beyond the feature-level issues, I found a set of bugs that cut across surfaces and indicate systemic issues that will harm trust with any user who encounters them. These are not edge cases - several appear on primary navigation paths.

Data / Pipeline

Badge counts contradict page stats across all major surfaces

Sidebar shows numbers that don't match page-level KPIs in Dashboard, Leads, and Quotations simultaneously. Requires a shared data pipeline source, not individual fixes.

Loading States

Multiple widgets permanently stuck on loading

Revenue (Dashboard), Fulfillment Readiness (Bookings), Map Leads ("Loading…" indefinitely), and Gift Cards all show loading states that never resolve.

Developer Artefact

Internal developer note exposed in Query Inbox subtitle

A developer comment or placeholder text is visible in the Query Inbox UI subtitle. Any enterprise buyer doing a thorough product eval will catch this immediately.

API Errors

Booking URL returns blank; Fetch ticket task shows error 422

Core operational workflows produce silent errors. Error 422 (Unprocessable Entity) suggests a validation failure that is surfaced as a generic error without actionable messaging.

UI Consistency

Dark mode switch does not affect the navbar

The theme toggle updates content areas but leaves the navbar unchanged - a visual inconsistency that makes the dark mode feel half-implemented and reduces trust in the feature.

Content State

Itineraries: "No itinerary selected" despite populated header

The Itineraries content area shows an empty state while the section header is populated - two conflicting data states visible simultaneously on the same screen.

Recommendation: Implement a "data health audit" checkpoint before any major release. Automated smoke tests should assert: (a) all sidebar badge counts match their corresponding page-level KPI counts, (b) every stat card resolves within 5 seconds on sample data, (c) no developer text or placeholder copy is visible in the production build. This is a CI/CD pipeline gate, not a manual QA task.


08 — Strategic Recommendations

Five changes that would most improve NAMA's conversion, retention, and trust.

Having mapped issues across all 12 surfaces, I prioritised by business impact rather than implementation effort. These five recommendations address root causes rather than symptoms.

01
Fix the data pipeline and enforce a naming convention before any feature work
The sidebar/page count mismatch is the single most trust-damaging issue in the product because it affects every user, every session, on the product's most important KPI surfaces. No amount of UI polish recovers from a lead count that contradicts itself on the same screen. Establish a single data source of truth for all aggregate counts, run automated smoke tests on every deploy, and enforce one name per entity (Leads, Quotations, Bookings, Contacts) across the entire product. This takes 1–2 engineering weeks and eliminates a continuous source of user confusion and support tickets.
02
Add a "Use NAMA's Key (Limited)" option at EKLA activation
Requiring a Groq API key mid-onboarding blocks every non-technical user from experiencing EKLA. NAMA's central value proposition is AI-powered quoting, but a user who never activates EKLA never experiences the product's differentiated value. A trial key option (50 EKLA interactions before requiring BYOK setup) would dramatically improve activation rates, create a natural BYOK conversion moment ("You're near your trial limit - connect your own key to reduce costs by X%"), and make NAMA's core AI feature accessible to the agency owner, not just the tech-savvy employee.
03
Replace the "Sample data" banner with a persistent onboarding checklist
The current experience drops users into a demo workspace with no clear starting point after 8 steps of setup. A persistent 5–7 step onboarding checklist embedded in the dashboard (collapsible, with progress tracking) creates a guided path to activation. Steps: connect WhatsApp → import first leads → send first communication → create a quotation template → complete first EKLA-assisted quote. Products like Slack, Notion, and Linear use this pattern because completion of this checklist is one of the strongest predictors of 30-day retention. Each completed step should unlock the next, converting skipped setup tasks into return activations.
04
Build explicit conversion triggers between every major pipeline stage
Right now, the pipeline feels disconnected: a lead does not cleanly become a quote, and an accepted quote does not cleanly become a booking. Every card or record should have a visible primary CTA that advances it to the next stage: "Convert Query → Lead," "Create Quote from Lead," "Convert Quote → Booking." Each transition should pre-fill the next form with existing data so agents don't re-enter information. This is the difference between a CRM with a pipeline view and a workflow product that actually moves deals forward.
05
Make EKLA proactive, not just responsive
EKLA currently appears in specific contexts (the lead panel, the "Ask EKLA" button) and feels reactive - the user must initiate every AI interaction. The dashboard "What needs your attention" widget is the right direction, but it needs to be extended across the product. EKLA should proactively surface: "This lead hasn't had a quote in 3 days - want me to draft one?" / "Your conversion rate dropped 20% this week - here's why" / "You have 3 leads from Kerala - consider creating a Kerala package." Proactive AI nudges are what separate an AI-first product from a CRM with an AI button bolted on.

Prioritised issue backlog

PriorityIssueSurfaceImpact
P0 - Fix now Request failed toast on completion screen; data badge mismatches Onboarding / All Trust loss at highest-intent moment; corrupts all pipeline KPIs
P0 - Fix now Dead demo video CTA on landing page Landing Page Blocks conversion at peak-interest moment
P1 - This sprint Revenue & Fulfillment widgets permanently loading Dashboard / Bookings Directly contradicts product's core P&L visibility promise
P1 - This sprint Groq API key required mid-onboarding (no trial fallback) Onboarding Step 5 Blocks non-technical users from experiencing EKLA
P2 - Next sprint Fake-looking testimonials and placeholder company names Landing Page Active trust destruction for evaluating B2B buyers
P2 - Next sprint Quote-to-Booking conversion trigger missing Quotations / Bookings Disconnected pipeline; agents lose deals at handoff
P3 - Backlog Sidebar navigation >14 top-level items with no grouping All app surfaces High cognitive load; slow time-to-task for new users
P3 - Backlog Navigation structure inconsistency between pages Landing Page / Pricing Disorientation during purchase evaluation

09 — PM Reflections

What this review reveals about early-stage B2B SaaS product decisions.

01
Data integrity is not a backend problem - it is a PM responsibility
The sidebar/page count mismatch that appears across three major surfaces in NAMA is not a developer oversight. It is a missing acceptance criterion. Every PM who ships a CRM product must define, in the requirements, that badge counts and page-level KPIs share a single source of truth and that this assertion is verified on every deploy. When data contracts are not specified, implementations diverge. The review taught me to add "count consistency" as a standard acceptance criterion for any product surface that shows aggregate numbers.
02
The completion screen is a product surface, not a formality
Seeing a "Request failed" toast on NAMA's onboarding completion screen was the most instructive moment in this review. The completion screen is the highest-stakes UI moment in any onboarding flow - it is where users transition from "evaluating the product" to "using the product." A failure at this moment is not just a bug; it resets the user's confidence to zero at exactly the moment you need it at 100. I now treat completion screens as first-class product surfaces with their own error state specifications and integration tests.
03
Naming conventions are a product quality metric, not a style preference
NAMA uses "Quotations" and "Quotes" interchangeably within the same screen. "Contacts" and "Clients" appear across different surfaces. "Comms" and "Communications" are used for the same module. This is not cosmetic inconsistency - inconsistent entity naming forces users to maintain a mental translation table as they navigate the product. Every extra cognitive step between "seeing a label" and "knowing what to do" is friction that compounds across a product used daily. I now include a naming dictionary as a required deliverable in every product specification I write.
04
For B2B SaaS, social proof that looks fabricated is worse than no social proof
NAMA's landing page testimonials have generic Indian names, no photos, no LinkedIn links, and company names that could be Lorem Ipsum placeholders. A sceptical B2B buyer - who is making a decision about a business-critical workflow tool - will Google "Horizon Holidays" and "Wanderlust DMC" and find nothing. The search failure is actively damaging because it confirms the suspicion rather than just failing to allay it. In evaluating my own product work, I now weight real user quotes as a P0 launch requirement for any B2B landing page, even if it means launching with one genuine quote instead of six fabricated ones.
05
Reactive AI features look like novelty; proactive AI features look like product
EKLA appears as a button the user presses when they want help. This positions AI as a feature rather than a product capability. The most valuable AI integrations anticipate user needs rather than waiting to be invoked - surfacing follow-up nudges on stale quotes, flagging conversion rate drops, or suggesting package creation based on lead clustering. Reviewing NAMA clarified for me the design principle I want to apply in my own AI product work: AI should reduce the number of decisions a user needs to make, not give them a new button to press when they've already decided what they need.
Appendix — The Evidence

Review Methodology & Issue Log

Complete issue register with severity scores, the surfaces reviewed, and the PM lens applied to each evaluation.

Appendix A — Surfaces Reviewed
SurfacePrimary User GoalKey Findings
Landing Page Evaluate NAMA and sign up or book a demo Dead demo CTA, placeholder testimonials, nav inconsistency, low contrast headings
Login / Sign-up Create an account and choose a plan Critical contrast failure on plan labels; high-friction single-screen signup form
Onboarding Step 2 Select agency type / persona Circle icons signal single-select for a multi-select interaction
Onboarding Step 3 Set up invoice header No logo upload, low contrast helper text, non-interactive progress bar
Onboarding Step 4 Configure lead channels Active-looking toggles that do not connect anything; no Facebook Lead Ads option
Onboarding Step 5 Activate EKLA AI Critical: requires leaving app to get Groq API key with no trial fallback
Onboarding Step 8 Complete setup and enter the app Critical: "Request failed" toast on completion; EKLA and channels shown as incomplete
Dashboard See pipeline health and urgent actions Double-rendered widget; Revenue permanently loading; badge count mismatch
Quotations Manage and track all quotes No date filter, no versioning, naming inconsistency ("Quotations" vs "Quotes")
Bookings Track confirmed bookings and fulfillment Fulfillment Readiness permanently loading; no Quote-to-Booking conversion trigger
Leads Manage and nurture the sales pipeline KPI count (2) contradicts sidebar count (47); loading skeleton rows on a loaded page
Holiday Packages Manage inventory and publish packages 14+ sidebar items with no grouping; passive onboarding state; non-contextual EKLA placement
Appendix B — Issue Severity Framework
SeverityDefinitionCount FoundExamples
Critical Directly causes conversion loss, trust loss, or renders a core workflow unusable 5 issues Dead demo CTA, "Request failed" on completion, data count mismatch, Revenue widget stuck, Groq key required mid-onboarding
Major Significant friction that increases drop-off, reduces task completion, or contradicts product claims 12 issues High-friction signup form, circle icon for multi-select, non-functional lead channel toggles, 14+ sidebar items, no Quote-to-Booking conversion
Minor Polish and quick wins that, if fixed, improve professionalism and legibility without major engineering effort 13+ issues Inconsistent CTA labelling, naming inconsistencies, low-contrast helper text, FAQ affordance, progress bar thickness
Appendix C — EKLA AI Layer Assessment
EKLA PersonaCurrent PlacementGap IdentifiedRecommendation
EKLA Sales (Closer) Lead panel intent scoring; "Ask EKLA" button Reactive only; no proactive follow-up nudge on stale SENT quotes Auto-surface "Quote hasn't had a response in 48h - want me to follow up?" on SENT quote records
EKLA Pricing (Strategist) Quote builder (margin-aware drafting) No visible margin comparison across quote versions; no pricing trend insight Surface "Your margin on this destination is 3% below your average - adjust?" during quote creation
EKLA Ops (Operator) Itinerary creation workflow Pipeline handoff between Quotations and Bookings is manual with no EKLA assist Add "Convert to Booking with EKLA" as a one-tap action on accepted quotes
EKLA Comms (Communicator) Communications module (draft with AI, tone selection) No Facebook Lead Ads integration despite high Meta lead volume in target market (Indian travel agencies) Add Facebook Lead Ads as a lead channel option; EKLA Comms should auto-qualify and respond to Meta leads