Legal · Last updated August 27, 2026

Privacy Policy

This policy explains what information FF Dev Studio ("Photographer," "we," "us") collects when you visit this website or reach out about photography, where that information goes, and the choices you have. It works alongside the Terms & Conditions, which cover image copyright and portfolio use in more detail. This is a small photography business, not a data company. Where something leaves this site, this policy says so and says who receives it.

01The Short Version

If you send an inquiry, you give us your name, your email address and phone number, your date, your venue and its address, a rough guest count, the names of anyone else you list, and whatever you write in the message box. That goes into the studio's own database, not a third party's, and it opens a client page for you.

Every page here is measured, and one of the two tools doing it records your visit. Vercel Web Analytics counts visits and clicks. Microsoft Clarity replays how a visit moved through a page, including the page as it was drawn on your screen. That includes the pricing page, and the estimate it shows you.

The estimator's location field is not private to your browser. What you type is sent out to be turned into real venues and addresses: to Google by way of our own server once you have typed four characters, and to Open-Meteo directly from your browser before that and whenever Google has no answer. Section 04 sets out which is which.

We do not sell your information, and we do not run advertising or retargeting. If you tick the box asking to be texted, that number and that permission are never sold, and never handed to anyone else for marketing; section 16 covers text messages on their own. The sections below spell all of this out.

02Information You Provide

When you submit the inquiry form on the Contact page, you choose to share:

  • your name, email address and phone number, and whether you ticked the box agreeing to be texted at that number;
  • your partner's name, and their email address if you give one;
  • your Instagram handle, if you give one;
  • the names, email addresses and roles of anyone else you add;
  • the type of shoot, the date, and the start and end times;
  • the venue and full address of each location, and with each one its latitude and longitude and the identifier Google uses for that place in its own index;
  • a rough guest count;
  • how you heard about the studio;
  • a time for an intro call and your browser's time zone, if you book one;
  • and whatever you write in the message box.

The box about text messages is the one thing on that form that is not ticked for you and does not have to be answered. The form sends either way, and the reply you get is the same. Section 16 is what happens if you do tick it.

If you built an estimate on the Pricing page first, the figure and the receipt behind it travel with the inquiry, so the studio quotes you the number you were shown.

That form belongs to us. It is served from app.ffdev.studio, the studio's own booking software, and shown inside the Contact page; what you submit is stored in the studio's own database. It replaced HoneyBook in August 2026, so nothing you send through this site reaches HoneyBook any more.

Sending an inquiry also opens a client page for you at that address, under the email you gave, and the confirmation email tells you how to sign in. Anyone else you name is recorded on the project as a contact, so the studio knows who is who; they are not given a sign-in, and we do not email them.

Booked clients later share whatever the work needs: schedules, addresses, the people involved, files, and the details on the agreement they sign. If you email the studio directly, that mail is received in Google Workspace. Email about a booked project is sent through Resend, and replies to it come back through Resend to a per-project address.

03Information Collected Automatically

The pages, photographs and typefaces you are looking at are static files hosted on Vercel. The inquiry form and the estimator's address lookup are served by the studio's own application, also on Vercel, with a database behind it. Both record the standard technical information any web request carries: your IP address, browser and device type, the page you came from, and the date and time. Loading a page here also reaches several other companies, because they deliver parts of it; section 06 lists every one, and each receives the technical data it needs in order to answer.

This site also runs two analytics products, described in section 07. Vercel Web Analytics counts page views and six named clicks. Microsoft Clarity builds heatmaps and records replays of a visit, which includes the page as it was drawn on your screen. Clarity sees this site's own pages only. It cannot see inside the inquiry form: that form is served from a different address and your browser keeps the two apart, so nothing you type into it appears in any recording. It can see the pricing page, and section 04 says what that means for your estimate.

Typing four characters or more into the estimator's location field asks the studio's server for suggestions. Unless it already has that answer in memory, the request is counted in a row in the database, so that an open lookup cannot be run up into a bill. That row holds a one-way hash of your IP address rather than the address itself, and no record of what you typed. It stops counting within fifteen minutes, and lapsed rows are swept out of the table afterwards. Below four characters nothing is written down at all: those requests are counted in memory and forgotten.

We do not use any of this to build advertising or marketing profiles, and we do not match it against your inquiry. What Microsoft does with what Clarity collects is governed by Microsoft's own privacy statement; section 07 says what it sets in your browser.

04The Pricing Estimator and Location

Most of the estimator runs in your browser. The shoot type, duration, guest count, add-ons and figures you choose are used on your device to work out the number, and none of them are sent to us on their own.

The location field is different. As you type, the text is sent out to be turned into real venues and street addresses, and which company receives it depends on how much you have typed.

From the fourth character on, the text goes to the studio's own server at app.ffdev.studio, which passes it to Google's Places service. Google receives what you typed, trimmed to 120 characters, and nothing else about you: the request is made by our server rather than by your browser, so your IP address, your device and the rest of the page never reach Google. Answers are held in our server's memory for about ten minutes.

Below the fourth character, and whenever Google comes back with nothing, and whenever that lookup fails or a spending limit has been reached, your browser asks Open-Meteo's geocoder instead, directly. Open-Meteo therefore receives the text you typed, and because your browser makes that request itself, your IP address as well. This is not only a failure path. The field starts looking things up at the second character and Google is not asked until the fourth, so the first two lookups for every venue you type go to Open-Meteo and not to Google, and so does any venue Google does not recognize.

The same address field sits inside the inquiry form, and there it is safer: that field has no browser-side fallback at all, so it only ever goes out through our server to Google.

Once a place is chosen, its coordinates and your date go to two more services, and your browser calls both, so both see your IP address. Open-Meteo is asked for the forecast for that day, or the historical average when the date is too far out. Valhalla is asked how long the drive is; it runs on OpenStreetMap infrastructure in Germany, so on that one request your IP address and the coordinates of your venue leave the United States.

If you choose "Use current location," your browser asks your permission first, and only if you allow it does the estimator read your approximate coordinates. Those coordinates go to Open-Meteo to be turned into a place name, and to Valhalla for the drive. They are not stored by this website. You can decline or revoke that permission at any time in your browser settings, and the rest of the estimator works without it.

The estimate is not sent to us while you are working on it. It is not hidden from everything, though, and this is the part worth knowing: the figure is drawn on the page as ordinary text, and Microsoft Clarity records this page as it was drawn. The quote, the date, the guest band and the address you picked are all legible in that recording. Clarity masks what you type into form fields; it does not mask text the page prints, and this site adds no masking of its own on top. Section 10 says how to stop the recording if you would rather not be in it.

Nothing about the estimate is put in the address bar, because a wedding budget has no business sitting in a link that can be shared or logged. When you click through to the inquiry form, and only then, it is written into your browser's session storage so it can be carried across. The form ignores it once it is twenty minutes old, but nothing deletes it on a timer: it clears when the tab closes, or the next time the page reads it and finds it stale. If you do inquire, the figure and its receipt are stored with your inquiry, and the address you chose is stored with it as text and as coordinates.

05How Your Information Is Used

Information you provide is used to respond to your inquiry; to prepare quotes, proposals, and agreements; to schedule, perform, and deliver photography services; to send invoices and process payment; to host and deliver your gallery; to provide support; and to keep the records a business is expected to keep. We may use your contact details to follow up on an inquiry or an active booking. We do not sell your information, and we do not use it for third-party advertising. We will only send you marketing messages if you have asked to receive them, and you can opt out at any time. If you gave us a number and agreed to be texted, we use it for text messages about your own inquiry and your own booking; section 16 says what those are, what we record when you agree, and how to stop them.

Anthropic's Claude does two jobs in the studio's back office, and both send information to Anthropic.

The first is filing. When email arrives about a project, the message, the sender's name and address, and a list of the studio's open projects are sent to Anthropic, which suggests which project the message belongs to. That list carries each project's title, category, stage, city and date, and the email addresses of the people on it. A person makes the filing.

The second is drafting, and it sends considerably more. To draft a reply for the photographer to edit before sending, Anthropic receives:

  • the project's title, category and stage;
  • the names and roles of the people on it;
  • the date, and the venue, city and street;
  • the itinerary;
  • whether the agreement is signed, and whether the gallery is out;
  • the amounts quoted, settled and outstanding, where the staff account is allowed to see money at all;
  • and the last ten messages of the correspondence, each trimmed to two thousand characters.

Held back on purpose: email addresses, phone numbers, the gallery pin, the text of the agreement, and any file links.

Neither job runs on the inquiry form, and neither is used to make a decision about you. What Anthropic does with what it receives is governed by its own terms.

06Where Your Information Goes

Running the business and this website depends on the companies below. Each processes information under its own privacy policy, and we share only what that company needs to do its job. We never sell your information to any of them or to anyone else. The first row is the studio's own software rather than a third party's, and section 13 says why that distinction matters.

Because an inquiry reaches several of them at once, here is exactly what leaves at that moment:

  • Two emails go out through Resend, a confirmation to you and a heads-up to the studio. The studio's copy quotes your message and carries your email address and phone number.
  • The shoot goes on the studio's Google Calendar, as an entry holding your name, the itinerary and its addresses, and the names and roles of anyone you listed.
  • If you booked an intro call, that call goes on the same calendar with your name, your email address, your time zone and the first part of your message, and Google creates a meeting link for it.
  • A row goes on the studio's Notion board with your name, your partner's name, the date, the shoot type, a link to your client page, and your phone number and Instagram handle when you gave them. It does not carry your email address or your message. If you later add a Pinterest board on your client page, its link goes on the row too.

No calendar invitation is sent to you or to anyone you named. The calendar entry and the Notion row are skipped when a submission looks automated rather than human, in which case the studio adds them by hand.

Inquiry form, client portal, agreementsThe studio's own app
Website and application hostingVercel
DatabaseNeon
Project email, sent and receivedResend
Direct email correspondenceGoogle Workspace
Text messages to and from the studioOpenPhone, trading as Quo
Address and venue lookupGoogle Places
Weather, and some address lookupsOpen-Meteo
Driving distance for the estimatorValhalla, OpenStreetMap
Shoot dates and intro callsGoogle Calendar and Meet
The studio's booking boardNotion
Invoices and card paymentsStripe
Final gallery hosting and deliveryPic-Time
Photograph deliveryCloudflare Images
Web typeface deliveryAdobe Fonts
Page views and click countsVercel Web Analytics
Heatmaps and session replayMicrosoft Clarity
Sorting email and drafting repliesAnthropic
Nightly database backupsBackblaze B2

We may also disclose information if required by law, to respond to lawful requests, or to protect the rights, safety, and property of the Photographer, clients, or the public.

07Cookies and Tracking

The site's own code sets no cookies. It keeps two things in your browser's session storage, which your browser clears when the tab closes: a flag remembering you have already seen the opening animation, and the pricing estimate described in section 04. Nothing is kept in local storage, and there is no account or login on this site. One of the two analytics tools this site embeds does set cookies, and because it runs inside these pages your browser will file them under this domain.

Vercel Web Analytics counts page views and six clicks: opening the menu, opening the pricing page, opening a gallery, opening a wedding story, clicking through to the inquiry form, and following a link off the site. It sets no cookie and stores nothing in your browser.

Microsoft Clarity builds heatmaps and records replays of a visit: pointer movement, scrolling, clicks, and the page as it was drawn. It is sent the same six clicks, and for three of them it is given a value that is attached to your recording as a label: which gallery you opened, which wedding story you opened, and the first 120 characters of the address of any link you followed off this site.

To hold one visit together and recognize a return, the Clarity tag sets cookies. They are Microsoft's, written on this domain by Microsoft's script, and at least one of them is used by Microsoft across its services for advertising as well as analytics. We do not run ads and we buy no advertising from Microsoft, but a cookie Microsoft sets is Microsoft's to use under its privacy statement, and it would not be true to tell you this site sets no profiling cookies at all.

The services that deliver the typefaces and the photographs receive the technical request data they need in order to answer, and may set functional cookies of their own.

You can block or delete cookies in your browser at any time, and nothing here depends on them. The inquiry form in particular sets no cookie at all and works fully with cookies switched off. It identifies nobody. To limit abuse it counts against two one-way hashes instead: one of the IP address a submission came from, and one of the email address typed into it, the second kept for up to seven days so that one address cannot submit without limit from a new connection.

08Photographs of You and Portfolio Use

Photographs created during a session or event are the Photographer's work and, as described in the Terms & Conditions, may be used for portfolio and marketing purposes (this website, galleries, social media, and similar media) unless you request otherwise in writing before the shoot. Where you ask for confidentiality in advance, that restriction extends to all images from the event, including those featuring guests. If you are a guest and would prefer not to be photographed or featured, please let the hosting client or the Photographer know, and reasonable requests to remove a specific image from public portfolio use will be honored.

09How Long Information Is Kept

Inquiry and booking records are kept in the studio's database for as long as needed to provide services and to meet legal, tax, and accounting obligations, and may be retained afterward within ordinary business records. Nothing expires on a timer: there is no automatic deletion of an inquiry, and removing a project is something a person does by hand, which takes its locations, its people and its correspondence with it.

The database is copied to Backblaze B2 every night. Those backups are kept on a rolling schedule of fourteen daily copies, twelve weekly, and eighty-four monthly, so the oldest of them reaches back seven years. Neon, the database host, keeps its own seven days of point-in-time history. A deletion therefore removes your information from the live database and from anything the studio can read, while copies age out of the backups on that schedule.

Copies also live outside the database and are kept until deleted, under each provider's own retention: the entry on Google Calendar, the row on the Notion board, and the emails held at Resend and in the studio mailbox.

Signing records for an agreement are kept deliberately. They retain the IP address, browser and timestamp of both the consent and the signature, because that is the evidence a signature happened, and there is no path in the software to delete it. The counter rows described in section 03 are the opposite case: they hold hashes only, they stop counting within fifteen minutes, and they are swept out of the table after that.

Final galleries are hosted on Pic-Time for a limited period after delivery, and clients are responsible for downloading and archiving their images before that window closes. If you need to know how long yours will be available, ask and we will tell you.

10Your Rights and Choices

Depending on where you live, you may have the right to ask for a copy of the personal information we hold about you, to have it corrected or deleted, to opt out of marketing messages, to stop any text messages by replying STOP or by asking us in whatever words you like, and to ask that your images not be used for portfolio purposes.

To make a request: if you are already booked, use the message box on your client page, or simply reply to any email you have from the studio. If you are not, the inquiry form reaches us, and so does a direct message on Instagram. We will respond within a reasonable time and may first need to verify your identity to protect your information.

The mechanism is worth knowing, because there is no button for any of it. There is no self-serve download and no automated erasure. A copy is assembled by hand out of the studio's records, and a deletion is a person removing the project, or one person on it, from the database. That is workable for a studio of two, and it means a request takes somebody a little time rather than a click.

Two things are not deleted: records we are legally required to keep, and the signing records described in section 09. And a deletion clears the live database while copies age out of the nightly backups on the schedule in that same section.

We do not sell your information for money, and we do not hand it to advertisers to target you. Microsoft Clarity, described in section 07, is a third-party analytics service that sets its own cookies, and some privacy laws treat an arrangement like that as sharing whether or not money changes hands.

If you would rather not be recorded, be aware that blocking cookies is not enough: that stops Clarity recognizing you from one visit to the next, but the replay is made by a script running inside the page and is sent either way. What stops it is blocking the script, which any browser extension with a tracker-blocking list will do, and which some browsers do by default. Nothing on this site stops working when you do.

11Data Security

We use reasonable measures to protect the information entrusted to us, and the companies listed above maintain their own security programs for the data they handle. The client portal has no password to steal, because signing in is a passkey, a Google sign-in, or a six-digit code sent to your address; and card details never reach us, because payments are taken on Stripe's own hosted page. No method of transmission over the internet or method of storage is completely secure, however, so while we work to safeguard your information we cannot guarantee absolute security.

12Children's Privacy

This website and these services are intended for adults, and we do not knowingly collect personal information from children under 13. Minors are photographed only with the consent of a parent or guardian, ordinarily the booking client. If you believe a child has provided us information without that consent, reach us by any of the routes in section 15 and we will remove it.

13Third-Party Links

This site links to services operated by others, including the gallery host and Instagram. Once you leave this site, that provider's privacy practices apply rather than ours, and we encourage you to review the policies of any third-party service you use. The inquiry form and the client portal at app.ffdev.studio are not third parties: they are this business's own software on another address of the same domain, and this policy covers them.

14Changes to This Policy

We may update this Privacy Policy from time to time by posting a revised version with a new "last updated" date at the top of this page. Changes take effect when they are posted. This page is always the current version, so if it has been a while, it is worth reading again.

15Contact

Questions about this policy, or requests regarding your information, can be sent through the inquiry form, or by replying to any email you already have from the studio, or by direct message on Instagram at @ffdev.studio. If you are a booked client, the message box on your client page reaches us too. Washington DC · New York · Available nationwide.

16Text Messages

The studio's phone number, (571) 500-1455, sends and receives text messages. We text you only if you gave us a number and agreed to it: by ticking the box on the inquiry form, which is never ticked for you, or by telling us on a call or in writing that texting is fine. Agreeing is not a condition of booking anything, and if you leave the box alone nothing about your inquiry changes.

What we send is about your own work. A reply to your inquiry, a time for the intro call, scheduling, timelines, where to be and when on the day, a note when your gallery is ready, and a reminder when a balance is due. We never send sales or marketing by text. Message frequency varies, because it follows your booking rather than a schedule. Message and data rates may apply, which is a matter between you and your carrier rather than between you and us. We do not buy, rent or otherwise obtain phone numbers from anybody, and we do not text a person who has not contacted the studio first.

When you agree, four things are written down alongside your record: the number in its international form, the date and time you agreed, the exact wording you were shown, and the IP address and browser you agreed from. That is the same evidence kept for a signature, described in section 09, and it is kept for the same reason. It is the studio's proof it was allowed to text you at all, and without the address and the wording a bare "yes" proves very little. The messages themselves are stored with your project, along with whether each one was delivered.

Texts leave the studio through OpenPhone, which trades as Quo, and travel from there over the mobile networks. Section 06 lists it alongside every other company that handles your information. Worth saying plainly: a text message is not a private channel. It passes through your carrier's equipment the same way a phone call does, and carriers are not liable for a message that arrives late or does not arrive at all. Anything genuinely sensitive belongs in email or on your client page.

Reply STOP to any text and the texts stop. Reply HELP and you get the studio's contact details back. You do not have to use either word: if you write in ordinary English that you would rather not be texted, that counts just the same, and we will use email instead. Stopping the texts stops nothing else about your booking.

The consent record is kept for at least four years after the last message we send you, because that is how long a claim about a text can be brought, and asking us to stop does not erase it. An opt-out is recorded on the same record rather than by deleting it, so the studio can show both that you agreed and that you asked us to stop. Section 09 covers everything else about how long records are kept.

No mobile information will be shared with third parties or affiliates for marketing or promotional purposes. Information sharing to subcontractors in support services, such as customer service, is permitted. All other use case categories exclude text messaging originator opt-in data and consent; this information will not be shared with any third parties.

© 2026 FF Dev Studio. Your trust is part of the work.