Ninja Prospecting CRM

Privacy Policy — Ninja Prospecting CRM

Version: October 19, 2026 · Contact information updated October 23, 2026 · Operator: Gigadev, LLC

This Privacy Policy explains what Ninja Prospecting CRM (the “Service”) collects, how information is used, where it is processed, and with whom it is shared. Gigadev, LLC, an Idaho limited liability company (“Gigadev,” “we,” or “us”), operates the Service. Our customers are businesses with workspaces used by their authorized users to manage sales relationships. We process workspace records on the customer’s behalf; we handle account administration, support, and our own business records for the purposes described below. The LinkedIn Companion extension’s privacy policy supplements this policy. Looking for how we handle Google data? Jump to section 3.

1. Information we collect

Account information. Your name, work email address, country (if requested), role, and workspace membership, provided when your administrator invites you or when your company signs up. Sign-in is handled by Supabase Auth (an emailed sign-in code) or, where enabled, “Continue with LinkedIn”; we store the resulting account identifier, never a password.

Workspace data you enter. Contacts, companies, deals, notes, tasks, files, custom fields, and anything else your team records about its business relationships. This includes personal data about third parties (your prospects and customers) that your company is responsible for collecting lawfully.

Connected-account data. When a user connects a Gmail, Outlook, Google Calendar, or Outlook calendar account we receive mail and calendar data from that account, as described in sections 3 and 4.

Bcc email copies. If you configure your email account to copy messages to your workspace’s private Bcc intake address, SendGrid receives those copies and delivers them to the Service for filing in your workspace.

LinkedIn data captured by the optional extension is described in the extension privacy policy.

Billing information. Stripe, our payment processor, collects the payment and transaction information needed to process subscription purchases, including payment-card details, which Stripe stores; we never receive full card numbers. We receive from Stripe the subscription and transaction information needed to administer service, including the customer’s name and billing email, plan, payment status, and renewal and cancellation dates. Billing notifications may also include the payment card’s brand, last four digits, expiration information, and billing address; we remove those details before storing the notification.

Usage and technical data. Server logs (request paths, timestamps, IP address, browser user-agent), an audit log of who created, changed, or deleted which record and when, and error reports. We do not use analytics or advertising trackers. Session cookies support sign-in and security.

2. How we use information

  • To provide the service: store and display your workspace’s records, thread email and LinkedIn messages onto the right contact, schedule and remind about follow-ups, and send email or create calendar events only when a user asks us to or when someone books, moves, or cancels through that user’s booking link.
  • To keep the service secure and working: authentication, audit logging, abuse prevention (a captcha on public sign-up), error monitoring, and backups.
  • To communicate with you about the service: invitations, sign-in codes, and service notices sent by email.
  • To administer subscriptions, cancellations, refunds, support requests, and legal recordkeeping obligations.

We do not sell personal data, use it for advertising, share it with data brokers, or use it to train artificial-intelligence or machine-learning models.

3. Google user data

This section describes how Ninja Prospecting CRM handles data received from Google APIs when a user connects a Google account. It applies in full to every Google permission we request.

What we request and why

Google permissionWhy we ask for itWhen it is used
openid, emailIdentify the connected Google account and show it in Settings.At connection.
gmail.readonlyFile sent and received mail onto the matching contact’s timeline and into the workspace inbox.Periodically while the mailbox is connected and the workspace is active.
gmail.sendSend a reply or new email from your mailbox when you click Send or schedule it in the CRM.Only on your explicit action.
calendar.events.readonlyDisplay existing calendar events in scheduling views and check free/busy availability for booking links.In scheduling views and when a visitor opens your booking link; for read-only calendar connections.
calendar.eventsCreate, update, or delete calendar events for meetings scheduled in the CRM or through your booking link; display existing events and check availability for two-way calendar connections.In scheduling views; when a visitor opens your booking link; and when a meeting is created, moved, or canceled in the CRM or through your booking link. Only for two-way calendar connections.

What we access and store from Gmail

Starting from the time you connect (with a 24-hour look-back), we periodically read messages in your mailbox, excluding Spam and Trash, and store for each: sender and recipient addresses and names, subject, date, Gmail thread and message identifiers, Gmail labels, a short snippet, the message body as plain text, truncated to 50 KB, and the names and sizes of attachments. We do not download or store the attachment files from your mailbox. Each stored message is linked to the contact records whose email address matches a sender or recipient; messages that match no contact are still stored in your workspace so they can be linked later. When you send from Ninja Prospecting CRM, we store the sent message (including its HTML) and any file you attached in the composer.

What we access and store from Google Calendar

Calendar events are read live when you open a scheduling view and are not stored; we only display them. For meetings created in the CRM or through your booking link with two-way sync on, we store the identifier of the Google event we created so we can update or remove it when the meeting changes.

If you publish a booking link, your calendar is read live again each time a visitor opens it, to work out which times you are free. Only free and busy times are used. Event titles, attendees, locations and descriptions are never shown to the visitor and are never stored; the page a visitor sees contains start times and nothing else about your day.

If someone books time with you

When a visitor books through one of your booking links, we store the information they provide in your workspace: their name, email address, browser-reported timezone, and answers to your booking questions. This information becomes a contact record and a meeting on that contact’s timeline, visible to workspace members in the same way as other CRM data.

If you set a video meeting link on your scheduling profile (a Zoom, Jitsi or similar room address), we store that link and include it in the guest’s confirmation, the calendar invite and their manage page. We never open or fetch that address ourselves. If you choose a Jitsi room per booking, we generate a random room name under the Jitsi instance configured for this deployment and hand it to you and the guest the same way; we do not operate that Jitsi service and do not send it anything other than the room name in the link you open.

We also email them a confirmation, and give them a link that lets them cancel or reschedule without creating an account. That link contains a random secret; we store only a one-way hash of it, so we cannot reconstruct it and neither can anyone who obtains our database.

Tokens

The access and refresh tokens Google issues are stored encrypted (AES-256-GCM) in our database and decrypted only in memory to make the API calls above. Disconnecting an account in Settings deletes the tokens immediately and stops all access.

Who can see it

Mail filed onto a contact and calendar-derived CRM meetings are visible to members of your workspace according to its permissions. Workspace administrators control membership. Ninja Prospecting support personnel can access a workspace only if an administrator invites them, and that invitation can be revoked at any time. Google data remains subject to the access restrictions below.

Gigadev’s in-application operator access to a workspace is limited to named personnel using two-factor authentication, with sessions limited to one hour and logged. Direct database and hosting-console access is protected by multi-factor authentication but is not subject to those in-application session limits or per-workspace logging. Human review of specific Google messages, files, or other data for support requires the connected user’s affirmative permission, which Gigadev records, except when review is necessary for security or required by law. These permission requirements apply to all access methods. Accepting the Terms of Service or inviting support personnel does not, by itself, provide that permission.

Sharing and transfer

Google data is used within the workspace and through the connected-account features you authorize. Our infrastructure providers in Section 5 process it as needed to run the Service. We do not sell it, use it for advertising, or use it to build or train AI/ML models. Any other disclosure must comply with Google’s Limited Use requirements and applicable law.

Ninja Prospecting CRM's use and transfer to any other app of information received from Google APIs will adhere to the Google API Services User Data Policy, including the Limited Use requirements.

Retention and deletion

Stored messages remain in your workspace as part of its history. Disconnecting a mailbox deletes its connection tokens and stops further access, but does not delete messages already filed. Administrators can delete filed messages or contacts. Section 6 explains workspace closure, export, deletion, and backups.

Revoking access

Use Settings → Email or Settings → Calendar in Ninja Prospecting CRM, or Google Account → Security → Third-party apps & services.

4. Microsoft 365 data

Outlook mail and calendar connections work as described in Section 3 with the equivalent Microsoft Graph permissions (Mail.Read, Mail.ReadWrite, Mail.Send, Calendars.Read or Calendars.ReadWrite, and offline_access) and the same storage, encryption, workspace visibility, retention, and revocation practices. Gigadev accesses content for requested support or security under the controls described in Section 7 of the Terms of Service. Access can also be revoked at Microsoft account → Privacy → App access.

5. Where data is stored and who processes it

Workspace data is hosted in the United States. The following providers process information to operate and secure the Service in the locations shown:

ProviderPurposeProcessing location
VercelApplication hosting.United States (US West)
SupabaseDatabase and authentication; encryption at rest and in transit.United States (AWS US West / Oregon)
SentryError monitoring with technical context and user/workspace identifiers; no message bodies or record contents.United States
ResendTransactional email, including invitations, sign-in codes, and notices.United States
Twilio SendGridReceive Bcc-to-CRM email copies and deliver them to the application.United States
Cloudflare TurnstileBot protection on public forms.United States and global edge locations
StripeSubscription payment processing and storage of payment-card details.United States and other countries where Stripe and its service providers operate.

Gigadev is the seller of subscriptions and is responsible for receipts, applicable taxes, and refunds. Stripe processes payments for us and also processes payment information for its own purposes, including fraud prevention, security, and legal compliance, as described in its privacy policy. We use the subscription and transaction information Stripe provides to administer service. Payment processing does not authorize access to workspace messages or contact records. At checkout, Stripe may offer to save your payment details in its Link service for use with other businesses; that is optional and is a relationship between you and Stripe under its terms.

Google and Microsoft provide customers’ separately connected accounts under their own terms and privacy policies. Our Data Processing Agreement (DPA), available on request, identifies our sub-processors and their roles. Workspace isolation uses database row-level security and application permissions designed to prevent unauthorized access between customers.

Information processed in the United States or other locations listed above may be subject to different laws than those in your location. Where applicable law requires safeguards for international transfers, those safeguards must be in place before the transfer. Before providing data subject to EU or UK international-transfer requirements, customers must contact us and receive written confirmation that the required arrangements are in place.

6. Your rights and choices

Users can view and edit their own profile in the app. Workspace administrators can correct or delete any record, remove members, and disconnect mailboxes and calendars. For access, correction, deletion, or export requests you cannot complete in the app, including deletion of an entire workspace, contact support@ninjaprospectingcrm.com. Because we process workspace records on the customer’s behalf, we may refer requests about third-party contact data to that customer.

When Service Ends. We disable the workspace, which prevents user sign-in and further email and calendar synchronization and rejects access from the LinkedIn extension. The application discards new Bcc copies addressed to a disabled workspace. Because the Bcc setting is in your own email account, you should also remove the intake address there to stop sending copies to SendGrid. You may revoke connected-account permissions directly with Google or Microsoft.

Export and Deletion. Unless the customer requests earlier deletion, we retain workspace data for at least 30 days after service ends and provide an export on request to support@ninjaprospectingcrm.com during that period; disabled users cannot sign in to export it themselves. We delete the data from active systems within 90 days after service ends, except data that law requires us to retain. Routine database backups expire through the rolling backup cycle, currently seven days. Data retained to meet a legal requirement remains protected and is used only for that purpose.

Other Records. After workspace content is deleted, we may retain the workspace name, member names and email addresses, audit entries about the workspace and its members, and billing, support, and security records, but only as long as reasonably needed for account administration, billing, support, security, or legal obligations. This does not extend retention of workspace content or audit entries about that content. Stripe’s retention of payment information depends on its processing role and applicable obligations, as described in its privacy policy.

7. Security

We use TLS for traffic, encryption at rest, encrypted OAuth tokens, database row-level isolation, audit logging, role-based workspace permissions, and daily backups. In-application operator access to a workspace is limited and logged as described in Section 3. These measures are designed to protect information; no system can guarantee absolute security.

8. Children

Ninja Prospecting CRM is business software and is not directed at children under 16.

9. Changes

We will post changes on this page and update the version date. Material changes will be announced in the application. Where law or a connected-account provider requires consent to a new use of information, we will obtain that consent before the new use begins.

10. Contact

Privacy questions or requests:

Email: support@ninjaprospectingcrm.com. The Service is operated by Gigadev, LLC (scott.shepherd@gigadev.net).

Mailing address: Gigadev, LLC, 9169 W State St, Box 2484, Boise, ID 83714.