Help & Documentation

How ForwardQuote works

From RFQ email to sent quote in under 3 minutes, without logging into a carrier portal.

Quick start

Three steps to go live. Each one unlocks the next.

1
Connect your inbox
Go to Settings → Integrations and connect your quoting inbox (Gmail, Outlook, or Front). ForwardQuote monitors it in real time. When an RFQ email arrives, it appears on your dashboard within 10 seconds.
2
Upload your carrier rate cards
Go to Settings → Carriers. Add each carrier you work with and upload their negotiated rate card as a CSV. ForwardQuote uses your actual contracted rates, not public tariffs.
3
Set your routing rules
Go to Settings → Routing Rules. Tell ForwardQuote when to send quotes automatically and when to put them in front of a dispatcher. Start with a simple rule: auto-send quotes under $800, review everything else.

Dashboard

Your pipeline at a glance. Four tiles show where your RFQs are right now.

Needs Review
AI extracted the fields. Low-confidence items need a dispatcher look before quoting.
In Progress
RFQs actively being worked by your team.
Quoted
Quotes built, awaiting approval or auto-send.
Sent
Quotes delivered to customers. Updated_at shows when the quote was sent.

Click any tile to jump to that filtered view of the RFQ queue.

RFQ Queue

The full list of all RFQs as a Kanban board. Cards move left to right as they progress through your pipeline.

Kanban columns

Needs Review
AI extracted fields; some need dispatcher verification. Amber left border.
Human Review
Too many fields missing to quote. You need to contact the customer first.
Held
Dispatcher put it on hold. Waiting on shipper info, a freight class confirmation, or similar.
Pending Quote
Fields confirmed, rate engine is building the quote.
Pending Approval
Quote ready. Dispatcher must review and approve before it sends.
Sent
Quote delivered. Card shows time since the quote was sent (not when the email arrived).

Review page

Where dispatchers work an RFQ. Three panels: extracted fields on the left, the original email in the center, and actions on the right.

Confidence badges

Every extracted field shows a confidence badge based on how clearly the email stated it:

ConfirmedField was stated clearly. Ready to quote.
ReviewField was implied or ambiguous. Verify before approving.
MissingField not found in the email. Must fill in manually.

Click any field to edit it inline. Changes save automatically.

Hazmat confirmation

If the AI detects a potential hazmat shipment, the hazmat panel shows "Shipper confirmation required." You must click Confirm or Clear before the Approve button becomes active. This is a hard gate: the system cannot quote a hazmat shipment without dispatcher sign-off.

Actions

Approve & Send
Builds the quote and sends it (or routes to Pending Approval based on your routing rules). Blocked if any required field is empty.
Hold
Pauses the RFQ with a note. Use when you're waiting on the shipper to confirm a field.
Discard
Removes the RFQ from the active queue. Still visible in the audit log.
Escalate
Flags the RFQ as high-risk and sends it to a manager with a note.

Quote page

Shows the carrier options and pricing built by the rate engine. Each option displays the carrier name, leg type, and total price including your margin.

How we calculated this

Click the expandable "How we calculated this" panel on any carrier option to see the full rate card lookup: freight class, weight bracket, CWT rate, zone multiplier, and the math that produced the total. This is your audit trail. If a customer questions the price, this is where you look first.

Sending the quote

Select a carrier option and click Approve. The quote goes to the customer via your connected inbox, in-thread with their original email. The customer sees a reply from your quoting address, not from ForwardQuote.

Settings

Carriers
Add, update, or remove carriers. Each carrier gets a leg type (first mile, line haul, last mile, or all) and a rate card. Rate cards are uploaded as CSV files and take effect immediately.
Routing Rules
Configure when quotes auto-send vs. go to dispatcher review vs. escalate to a manager. Rules are evaluated in priority order. The first matching rule wins.
Team
Invite dispatchers and admins. Admins can change settings; members can only work the RFQ queue. Remove a member to revoke their access immediately.
Integrations
Connect or reconnect your quoting inbox. Shows the connected provider, email address, and connection status. Disconnect here if you need to switch providers.

Freight class reference

Freight class is an 18-tier NMFC code (50 to 500) that determines the base LTL rate for a shipment. Lower numbers mean denser, easier-to-handle freight — and lower rates. Higher numbers mean lighter, bulkier, or more fragile cargo that costs more per pound to move.

The rate engine looks up your carrier's CWT rate by freight class. If the class is wrong, the quote is wrong. A shipment rated at class 100 instead of 65 can mean a 30–40% price difference on the same weight.

If the shipper didn't provide freight class, calculate it: divide the total weight (lbs) by the total cubic feet of the shipment. Match that density to the table below. When in doubt, call the shipper — they'll know it or can get it from their supplier.

ClassDensity (lb/cu ft)Example commodity
5050+Steel, cast iron, hardwood flooring
5535–50Bricks, cement, mortar
6522.5–35Car parts, bottled beverages, engines
7015–22.5Auto engines, food items, unassembled furniture
77.513.5–15Tires, bathroom fixtures
8512–13.5Crated machinery, cast iron stoves
92.510.5–12Computers, monitors, refrigerators
1009–10.5Wine, caskets, boat covers
1108–9Cabinets, framed art, table saws
1257–8Small appliances, auto glass
1506–7Sheet metal, bookcases
1755–6Clothing, couches, stuffed furniture
2004–5Sheet metal parts, TVs, auto sheet metal
2503–4Plasma TVs, bamboo furniture
3002–3Wood cabinets, assembled furniture, model boats
4001–2Ping pong balls, deer antlers
500<1Gold dust, bags of air
If freight class is missing, the Approve button is blocked. Contact the shipper or use an NMFC lookup tool to confirm before approving.

FAQ

Amber means the AI extracted a value but isn't certain it's correct. The email was ambiguous or the field was implied rather than clearly stated. Always verify amber fields before approving, especially freight class, origin address, and pickup date.
Needs Review means most fields were extracted but some need a dispatcher check before quoting. Human Review means too many fields are missing. You need to contact the customer first to get the full shipment details before a quote can be built.
Yes. Click any field on the review page to edit it inline. Your changes save automatically and are reflected in the quote calculation.
The RFQ is moved to Discarded status and removed from the active queue. It stays in the system for audit purposes but won't appear on the dashboard. Discard is permanent. If you do it by accident, ask your admin.
Freight class is an NMFC code (50–500) that determines the base LTL rate. You cannot approve a quote without it. The Approve button is blocked when freight class is empty. If the customer didn't provide it, look it up by commodity or call the shipper to confirm.
Your routing rules required a dispatcher review for this quote, usually because the price exceeded your auto-send threshold, the shipment had hazmat, or a special requirement triggered a review rule. Open the quote, review it, and click Approve to send.
Wait 15 seconds and refresh. If it still doesn't appear: check Settings → Integrations to confirm your inbox shows "Connected." Also confirm the email was sent to the correct quoting address. If the email body was blank or HTML-only with no readable text, the system skips it to avoid sending garbage to the AI. Forward a plain-text version instead.
Go to Settings → Carriers. Click "Add carrier" for a new one. To update a rate card, click the carrier name and upload a new CSV. New rates replace old ones immediately.
Go to Settings → Team → Invite member. Enter their email address. They receive an invite link, set their password, and land on the dashboard on first login.
Yes, but coordinate with your team. There's no real-time lock. If two dispatchers edit the same RFQ simultaneously, the last save wins.

Security & Privacy

Yes. Every record in the database (RFQs, quotes, carriers, team members) is tagged with your tenant ID. Row-level security policies on the database enforce that queries for one tenant never return data from another. Your rate cards and customer emails are not visible to any other ForwardQuote customer.
ForwardQuote connects via OAuth. You authorize access through your email provider (Google, Microsoft, or IMAP), and we receive a scoped token for that specific account. We only read emails that arrive at your designated quoting address. We do not have access to your broader mailbox, contacts, calendar, or other accounts.
Four services touch your data: Supabase (database, hosted on AWS), Anthropic (Claude AI processes email text to extract shipment fields; no data is retained by Anthropic for training), Nylas (email connectivity layer), and Railway/Vercel (backend and frontend hosting). We do not sell or share your data with any other third party.
No. ForwardQuote uses the Anthropic API under a commercial agreement. API inputs and outputs are not used to train Anthropic's models. Email content is sent to the API for extraction and is not retained by Anthropic after the response is returned.
Yes. All traffic between your browser, our servers, and third-party APIs uses TLS. Data at rest in Supabase (Postgres) is encrypted using AES-256. OAuth tokens are stored encrypted in the database, not in application code or environment variables accessible to dispatchers.
Standard hardening across the application: browser security headers, a locked-down CORS policy that only accepts requests from ForwardQuote's own domains, and no wildcard access to our APIs. We keep this posture under regular review as the product matures.
RFQ records (including the original email text and extracted fields) are stored indefinitely unless you request deletion. We do not currently have an automated retention policy. If you need records purged (for example, on contract termination), contact your ForwardQuote account owner and we will remove your tenant data on request.
Not yet. ForwardQuote is in early access. We follow security best practices (least-privilege access, encrypted storage, row-level isolation) but we have not completed a formal SOC 2 audit. If your organization requires SOC 2 compliance as a condition of procurement, contact us and we can discuss your timeline.
Access to production data is restricted to the founding team for support and operational purposes only. We do not grant access to your tenant data to contractors or third parties without explicit consent. All internal access is logged.
On cancellation, your account is deactivated. Your data remains in the system for 30 days in case you need to export records, then is permanently deleted on request. We do not repurpose or sell data from cancelled accounts.
ForwardQuote · Early Access
TermsPrivacy