What we collect, why, and who sees it
This policy covers the public website, the intake form, the client portal, the private site-status and order-tracking pages, and the messages we send. In short: we collect only what the service needs. We use it to run the service and to send the notifications each contact has chosen. We do not sell it. Your records belong to you, and you can ask for a full export at any time. The rest of this page spells out who sees what, how long we keep it, and how to change or delete it. If anything is unclear, email us and we will explain it.
Last updated: October 16, 2026. Draft, not yet reviewed by an attorney. Applies to Safety City Compliance LLC, Bergen County, New Jersey.
Draft for attorney review. This page describes what the system actually does today. It has not yet been reviewed by an attorney and may change before it is final. Questions: safetycitycompliance@gmail.com.
Who we are
Safety City Compliance LLC ("Safety City", "we") is a third-party compliance management company. We keep a compliance calendar and a site file for each client, coordinate permits, inspections, and service visits, and notify the people a client names when an alarm, fault, or service update comes in. Contact: safetycitycompliance@gmail.com.
What we collect
We collect only what the service needs to run. In practice that is:
- Intake answers. What you type into the intake form: the business's legal name and trade name, its type, billing address and billing email, each site's address and municipality, counts and descriptions of equipment, current vendors and inspection history, the services you want, scheduling preferences, the name you type as a signature, and, if you choose to answer it, how you heard about us. Drafts are saved as you go, so partial answers are stored too.
- Contacts. Names, roles, email addresses, and phone numbers of the people a client lists, plus each person's notification choices (email, text, phone call, browser push) and escalation level. A contact may also give us their mobile carrier so texts can fall back to the carrier's email-to-text gateway, an address the carrier runs that turns an email into a text message.
- Site and equipment records. Each site's address, alarm system details, equipment inventory (extinguishers, emergency lights, hood systems, cylinders, AEDs, and so on), obligations and due dates, permits and registration numbers, visit and service reports, fill-lot logs, and photographs taken during walkthroughs and visits.
- Alarm and fault events. When an alarm panel, a central station, an automation tool, or a person reports an alarm, trouble, supervisory, waterflow, discharge, communications fault, heartbeat, or restore for a site, we record the event, its time, its source, the zone or message it carried, who acknowledged it and when, and how it was resolved.
- Service requests and orders. What you report or request (the category, urgency, description, preferred times, and the site), the contact name, email, and phone you give, and the order's timeline: status changes, scheduling, the assigned technician, and customer-visible notes. If you answer the optional question about how you heard about us, we keep that answer with the request.
- Quotes, invoices, and payments. The quotes we send you, your decision on each one (approved, changes requested, or declined) and any note you type with it, PO numbers you give us, invoices and statements, and a record of each payment: the amount, the date, and how it was paid.
- Signatures, messages, and uploads. When you approve a quote or countersign a service report, the name you type and the signature you draw are stored as an image with that record. Messages you send us through the portal, and the documents and photos you upload there, are kept in your site file along with any note you attach.
- Push subscriptions. If you turn on browser notifications, your browser gives us a subscription endpoint and keys. We store those so we can send push alerts to that browser. They identify a browser, not a person.
- Sign-in codes and sessions. Signing in to the client portal sends a one-time code to your email. We store the code, the email it was sent to, when it expires, and whether it was used. Staff sign-in uses a password and, by default, a one-time emailed code as well. A signed-in visit is tracked with one session cookie (see Cookies below).
- Messages we send. Every email, text, phone call, and push notification we send is logged with the recipient, channel, time, delivery result, and any error the provider returned, so we can prove what was sent and retry what failed.
- Server logs. Like any web server, ours records requests: the page or endpoint, the time, the IP address, the browser type, and errors. We use these to keep the service running, to enforce rate limits, and to investigate problems. We do not use them to build profiles.
- Visitor counts. Our own server counts visits to the public website and to the portal sign-in pages. It sets no cookie and stores nothing in your browser. For each day we keep only totals: how often each page was opened, how many different visitors came, the name of the website that sent them (for example google.com, never the full address), the campaign words in the link if it carries them, and how many visits ended in a request such as an intake or a walkthrough. To tell visitors apart within one day, the server combines your IP address and browser type with a random key that changes every night. The result stays in the server's memory for that day only. It is never written to our database, a log or a backup, and we cannot connect one day's visit to another's. Search engine robots and signed-in staff are not counted. If your browser sends a Global Privacy Control or Do Not Track signal, we do not count your visit.
- Code-change alerts. If you sign up on one of our town pages, we keep your email address, the towns you picked, when and on which page you signed up, the words next to the button, and when you confirmed. We do not ask for your name or phone number.
- Binder links. A client can share a read-only link to a site's compliance binder with an inspector or surveyor. The link works for 1 to 30 days. Each time someone opens the link or a document in it, we record the time, what was opened, and the browser type (for example "Chrome on Windows"). We do not record the IP address with it. The client sees that list and can turn the link off at any time.
Invoices, quotes, and statements are shown in the client portal and on the private links we email. When online payment is turned on, card and bank (ACH) payments are taken by Stripe on Stripe's own checkout page (see "Who we share it with" below). Stripe sees the card or account details; we never do. We keep the payment record Stripe sends back: the amount, the date, whether it was card or bank, the email you gave at checkout, and Stripe's reference for the session. If you tell us a check is in the mail, we keep the check number, amount, and mailing date you type. We do not collect Social Security numbers.
How we use it
- Running the compliance service. Building and maintaining the site file, the compliance calendar, the calendar feed, permit and registration filings, visit reports, and the records an inspector or surveyor asks for.
- Notifications. Sending alarm, fault, and escalation alerts, service-visit and order updates, calendar reminders, intake confirmations, welcome packs, and sign-in codes, by email, text message (SMS), voice call, and browser push, to the contacts a client has listed and according to each contact's choices.
- Order tracking. Giving you an order number and a private tracking link so you can see the status, schedule, and timeline of a request.
- Answering you. Calling or emailing back about a walkthrough request, an intake, a report, or a question.
- Code-change alerts. Emails about rule changes in the towns you picked, sent only after you confirm your sign-up.
- Improving the website. The daily visitor counts show which pages people read and which links bring them, so we can fix what does not help. They are totals, not profiles.
- Learning what works. We count the answers to "How did you hear about us?" to see which outreach brings people to us. We look at the totals. Your answer is never tied to the pages you visited, and we never share it.
- Keeping the service safe and working. Rate limiting, detecting abuse of the public forms, debugging, and backups.
We do not sell personal information and we do not use it for advertising. We email people who are not clients only about something they asked for, such as a walkthrough request or code-change alerts. We do not send marketing text messages.
Text messages (SMS) and phone calls
We send text messages and automated voice calls only to phone numbers that were given to us for that purpose. That happens in four ways: on the intake form with the text-message consent box checked; when a client adds a contact and turns on texts or calls for that contact; when a contact changes their own preferences in the portal; or when a person reporting an issue or requesting service gives a phone number with the text-updates box checked.
- What the texts are. Alarm and fault alerts, escalation notices when nobody has acknowledged an alert, service-visit and order updates, calendar reminders, and replies to something you asked for. Frequency varies with what happens at your sites. We never text marketing.
- Message and data rates may apply. Your carrier's normal charges apply to texts and calls you receive.
- To stop. Reply STOP to any text and that number stops receiving texts from us. You can also email safetycitycompliance@gmail.com, or change the contact's settings in the portal. Stopping texts does not turn off email, phone calls, or push unless you ask for that too, and it does not stop the people you have listed from being paged.
- For help. Reply HELP to any text or email safetycitycompliance@gmail.com.
- Voice calls. The "pager" is an automated call that reads the alert out loud. It is used for alarms and faults and, if a contact chooses it, for escalation. It is not used for sales.
Carriers and our messaging provider are not responsible for delayed or undelivered messages. If a text cannot be delivered, we still record it and try the other channels the contact has turned on.
Code-change alerts by email
You can ask for an email when a fire code rule, a permit or an inspection practice changes in a Bergen County town. This is how it works.
- Confirmed first. We send one email with a link. Nothing else comes until you open it and press Confirm. If you do not confirm, we delete the sign-up after 30 days.
- What we keep. Your email address, your towns, when and on which page you signed up, the words next to the button, and when you confirmed. That is our record of your consent. We do not keep your IP address with it.
- How we send. Through the same email provider as our other email (currently Google's mail servers). We do not track opens or clicks, and the emails carry no tracking pixels.
- Unsubscribe. Every alert has an unsubscribe link at the bottom, and many email apps show an Unsubscribe button. One click stops all alerts. On the same page you can keep only some towns. You can also reply to any alert and ask.
- After you unsubscribe. We keep your address and the date for 90 days, as proof that we stopped, then delete them with the record of the alerts we sent you.
- A copy, or deletion now. Email safetycitycompliance@gmail.com and we send you what we hold, or delete it, within 10 business days.
- Never shared. We do not sell or share the list. Only Safety City staff see it.
Who we share it with
We share personal information only with the companies that carry the service for us, and only what each one needs:
- Email delivery. The email provider we send through (currently Google's mail servers; possibly a transactional email service such as Resend or SendGrid) sees the recipient address and the message.
- Text messages and voice calls. Twilio delivers our texts and places our automated calls. It sees the phone number and the message text, and it handles STOP and HELP replies.
- Hosting. The company that hosts our server and database (for example Fly.io, Render, or Vercel with a hosted Postgres database) stores the data on our behalf. Web push notifications pass through your browser maker's push service (Google, Apple, or Mozilla).
- Online payments. When card or bank (ACH) payment is turned on, Stripe runs the checkout page and processes the payment. We send Stripe the invoice number, the amount, and the billing email we have on file. You enter your card or bank details on Stripe's page, and Stripe keeps them. We get back the result, the amount collected, the email used at checkout, and a payment reference.
- Embedded media. Google (YouTube) and Unsplash serve the videos and photos on the What we do page and see the request that loads them. They do not receive your name, email, or any portal data.
Beyond that, we share a client's records with the fire official, another authority having jurisdiction (the office or official that enforces a code at your site), a surveyor, or another vendor only at the client's direction, for example when a client asks us to send the inspection file to the fire official. We will also disclose information if the law requires it (a subpoena or court order) or to protect someone's safety, and we will tell the client when we are allowed to.
If Safety City is ever sold or merged, client records would transfer to the new owner under this same policy, and clients would be told beforehand.
How long we keep it, and whose it is
- Client records belong to the client. The site file, calendar, reports, photographs, and inspection history are yours. At any time, and especially when an agreement ends, you can ask for a full export in a format the next company can read, and we provide it.
- Deletion on request. Ask and we delete your records, except for what we must keep to satisfy a legal obligation, resolve a dispute, or document work already done (for example a service report that a fire official may later ask about). We will tell you what, if anything, is kept and why.
- Intake drafts that are never submitted, and walkthrough or service requests from people who never become clients, are kept only as long as they are useful to answer you and are then removed.
- Sign-in codes expire 15 minutes after they are issued. A used or expired code cannot be used again.
- Message logs (what was sent, to whom, and whether it was delivered) are kept with the client's records because they prove what was sent, and they are deleted with those records on request. Server logs are kept by our host for a short time for troubleshooting.
- Visitor counts are daily totals with no personal information in them. We keep them for about 13 months (400 days) and then delete them. The nightly key used to tell visitors apart is never stored.
- Backups of the database are taken daily and kept for a rolling period of about two weeks. Deleted records can remain in those backups until they age out.
Security
- Everything travels over HTTPS. Sign-in uses one-time codes sent to a verified email; there are no customer passwords to leak.
- Sessions are kept in a signed, HTTP-only cookie that is not readable by page scripts and that is marked secure on the live site.
- Site-status pages and the compliance record (verify) page, order-tracking pages, alert-acknowledge links, intake resume links, binder links, the walkthrough link we email after an online booking, the manage link in code-change alert emails, and the links in quote, service-report, and invoice emails are private links. Anyone who has the link can see, and in some cases act on, what it points to. That includes approving and signing a quote, countersigning a service report, paying an invoice, changing or canceling a walkthrough, or changing which code-change alerts are sent. Keep them private. A client can ask us to rotate a site's links at any time, and to void and reissue a quote or invoice.
- Alarm webhooks are per site and protected by a secret; the public status page shows only counts, never a site's name.
- Access to the staff portal is limited to Safety City staff with a password and, by default, an emailed code each time.
No system is perfectly secure. If we learn of a breach that affects your information, we will tell you and any authority we are required to notify, without unreasonable delay.
Cookies and browser storage
- One cookie. The portal sets one cookie,
scc_session, only after you sign in. It keeps you signed in and nothing else. There are no advertising or analytics cookies on this site. - Local storage on your device. The intake form keeps a copy of your draft in your browser so you do not lose it if the connection drops. The report, contact, and tracking pages remember your last order number so the tracking page can find it. The site-status page remembers whether you turned on push notifications for that site. The binder page remembers which filter you picked. All of this stays on your device and is not sent anywhere except back to us when you submit or resume. Clear your browser's site data to remove it.
- Offline copies of pages. So the site and the app open without a connection, your browser keeps a copy of the public pages and of any page you have opened. These are the page layouts only; your records, invoices, and site data are fetched live each time and are not stored this way. The copies are refreshed when you are back online and are removed when you clear your browser's site data.
- We do not use third-party trackers, pixels, analytics services, or social buttons. The visitor counts described above are made by our own server and use no cookie and no browser storage.
- One page loads outside content. What we do shows reference videos embedded from YouTube in its privacy-enhanced mode and photographs served by Unsplash. When you open that page, Google and Unsplash receive your IP address and browser details. YouTube may set cookies if you play a video. No other page loads anything from a third party.
Children
The website and portal are for businesses, facilities, and emergency-services agencies. They are not directed to anyone under 18, and we do not knowingly collect information from anyone under 18. If you believe a minor has given us information, tell us and we will remove it.
Your choices: see, change, or delete your information
- See, correct, export, or delete the information we hold about you or your business: email us.
- Change which notifications you get: sign in to the client portal and edit your contact, or ask us.
- Stop texts: reply STOP. Stop push: turn it off in your browser or on the site-status page.
- Not be counted: turn on Global Privacy Control or Do Not Track in your browser.
We will answer within a reasonable time and never charge for it.
Changes to this policy
When we change this policy we update the date at the top and, for changes that matter, tell current clients by email. Continuing to use the service after a change means you accept it.
Contact
Safety City Compliance LLC · Bergen County, New Jersey
safetycitycompliance@gmail.com
See also the terms of use.
Draft for attorney review. Not final until an attorney has reviewed it.